嗨,Scripting Guy!

嗨,Scripting Guy!

歡迎使用 TechNet 專欄,Microsoft Scripting Guys 會在此為您解答有關系統管理指令碼的常見問題。您有關於系統管理指令碼方面的問題嗎?請將電子郵件傳送到 scripter@microsoft.com。我們無法保證能夠逐一回答每個問題,不過我們會盡力而為。

還有,別忘了瞧瞧全新經過改良的嗨,Scripting Guy!過往文件

今天的問題:如何清除 HTA 中的文字方塊?


如何清除 HTA 中的文字方塊?

嗨,Scripting Guy!我要如何清除 HTA 中的文字方塊?

-- CB

CB,您好。我們已經有好一陣子沒有回答關於 HTA (HTML 應用程式) 的問題了。想說應該可以就此逃過一劫,沒想到在一個月前左右,HTA Developer's Center 首度登台,這暗示著我們得要試著更加強支援有興趣寫 HTA 的人。那麼我們真的有加強支援有興趣寫 HTA 的人嗎?這真是個非常重要的問題。不巧的是我們沒有時間回答…

但是往好處想:至少今天,我們是在支援有興趣寫 HTA 的人。所以就讓我們來瞧瞧能不能想出要怎麼透過程式設計來清除文字方塊。

我們假定您有個大致如下的 HTA,也就是說,有個使用者可以輸入資料的文字方塊。另外還有個按鈕讓使用者可以簡單地清除資料然後重新輸入;他們只需要按一下 [清除文字 (Clear Text)] 按鈕,文字方塊內的任何文字就會被清除掉。在我們的簡化版本中,HTA 看起來像這樣:

 

HTA


不過有個圈套:每次有使用者按下按鈕時,要怎麼清除文字?

信不信由您,這是寫指令碼最簡單的事情之一。在 HTML 中,每個文字方塊都有個名為 Value 的屬性,它代表當時剛好在文字方塊內的任何內容。例如,在我們的範例 HTA 中,該文字方塊的值為「This text box has text in it」(這個文字方塊內有文字)。如果想要去除該些文字,只需要將 Value 屬性設為無就行了。假設我們的文字方塊稱為 MyTextBox,只要這行程式碼就夠了:

MyTextBox.Value = ""

就是這麼簡單!如果想將文字變更為「Please enter your name here:」(請在此輸入您的名字:),可改用這行程式碼:

MyTextBox.Value = "Please enter your name here:"

您要是想自己試試看,以下是範例 HTA 的完整程式碼。只要將下面內容複製到記事本,然後將檔案以 .hta 的副檔名儲存就可以了:

<head>
<title>HTA Test</title>
<HTA:APPLICATION 
     APPLICATIONNAME="HTA Test"
     SCROLL="yes"
     SINGLEINSTANCE="yes"
>
</head>
<script language="VBScript">
    Sub ClearText
       MyTextBox.Value = "" 
    End Sub
</script>
<body>
    <input type="text" name="MyTextBox" size=40 value="This text box has text in it"><p>
    <input type="button" value="Clear Text" name="run_button" onClick="ClearText">
</body>

在您發問之前,是的,相同的方式也可用來清除任何鍵入文字區域的文字。沒錯,今天的網際網路特惠讓您花一個問題的價錢,得到 2 個問題的解答。讓我們來瞧瞧其他在網際網路跳樓大拍賣中有關指令碼的每日問答專欄。


如需詳細資訊

查看嗨,Scripting Guy!- 過往文件

 

回到頁首 回到頁首