2012-04-25 49 views
1

當我的頁面加載第一次時,我看到文本框上的水印,但如果有任何回發頁面上,水印被清除,有沒有辦法在文本框中保存水印?水印文本框部分回發清除

<head runat="server"> 
    <title></title> 
    <script src="scripts/jquery-1.4.2.min.js" type="text/javascript"></script> 
    <script src="scripts/jquery.watermark.min.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
     $(function() { 
      $("#txtEmail").watermark("Email Address"); 
     }); 
    </script> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:TextBox ID="txtEmail" runat="server"></asp:TextBox> 
     <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtEmail" ErrorMessage="Email Invalid"></asp:RequiredFieldValidator> 

    </div> 
    </form> 
</body> 
+2

當人們問這樣的問題,我一直懷疑:是他們熟悉的瀏覽器開發者工具如Firebug(內置到Chrome瀏覽器)?使用Firebug很容易看到這裏發生了什麼。 – McGarnagle 2012-04-25 01:13:58

+0

我的確熟悉螢火蟲,我不知道如何確定當你點擊按鈕時發生了什麼,而且我明白螢火蟲檢查樣式表和東西......如果你知道,請讓我知道。 – 2012-04-25 01:19:37

+0

1)轉到Firebug中的** Scripts **部分。 2)在下拉列表中選擇您的HTML文件。 3)在行$(「txtEmail」)。水印上添加一個斷點。 4)使用控制檯進行調試(檢查選擇器是否成功等) – McGarnagle 2012-04-25 01:23:55

回答

1
  1. 轉到Firebug的腳本部分。
  2. 在下拉列表中選擇您的HTML文件。
  3. 在行$(「txtEmail」)。水印上添加一個斷點。
  4. 調試使用控制檯(檢查選擇是成功的,等)
2
//for jquery ready 
$(function() { 
     $("#<%= txtEmail.ClientID %>").watermark("Email Address"); 
}); 

//for partial postbacks 
function pageLoad() 
{ 
     $("#<%= txtEmail.ClientID %>").watermark("Email Address"); 
} 
+0

是的,我也試過,同樣的行爲 – 2012-04-25 01:21:40

+0

沒有道理,請發佈您的服務器端代碼。 – 2012-04-25 01:22:45

+0

它清除文本框水印後,它做回發,所以我不知道如何處理 – 2012-04-25 01:22:48