2013-03-23 128 views
0

我有一個輸入類型=「文本」,其默認值是「邁克」。當用戶點擊它時,該值應該設置爲''(空),當它離開焦點時,它應該回到「Mike」(除非用戶將該值更改爲另一個名稱)。我所做的是:JavaScript - 靜態變量?

<input type="text" id="TxtFname" style="width:50%" runat="server" 
    onfocus="firstText = this.text;if(this.value!=''){this.value='';}" 
    onblur="if(this.value==''){this.value=firstText;}" /> 

,並在頁面的頂部,在頭內容佔位符:

<script type="text/javascript" lang="jv"> 
    var firstText; 
</script> 

由於某種原因,它一直「忘記」什麼使用firstText的價值,所以它將文本框的值設置爲「未定義」。 有沒有辦法創建一個靜態變量,所以firstText的值不會每次都重置?

+0

你真的應該使用'placeholder'屬性來處理這樣的事情...... – Bergi 2013-03-23 18:56:34

回答

2

您應該將firstText設置爲輸入的value屬性。

firstText = this.value; 

否則,this.text不是輸入元件,從而它的值被默認爲undefined上的定義的屬性。

+0

謝謝!我認爲文字和價值是一回事。這解決了我的問題。 – 2013-03-23 18:06:05