2011-02-14 35 views
0

我想在我的輸入表單上使用WaterMark作爲我的一些文本框。問題是我有一個自動回發下拉列表,這會導致我的文本框水印文本在回發時閃爍。jquery WaterMark文本框在回發上閃爍

下面是該方案的樣本版本:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<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> 
     <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true"> 
      <asp:ListItem Text="One" /> 
      <asp:ListItem Text="Two" /> 
      <asp:ListItem Text="Three" /> 
     </asp:DropDownList> 
     <asp:Button ID="Button1" runat="server" Text="Button" /> 
    </div> 
    </form> 
</body> 

這樣做的原因行爲是因爲jQuery水印是客戶端。

我找到的一種解決方法是here。與此相關的問題是我必須使用AjaxControlToolkit的WaterMarkTextBoxExtender,如果可能的話,我想避免它。

編輯:我錯了。我指出的上述解決方法不起作用。

所以我尋找的是一個解決jquery水印和回發的工作。

回答

0

看起來我的選擇是不是使用dropdownlist的自動回發,我將不得不使用jQuery在下拉更改上進行ajax調用,並使用從ajax調用返回的數據更新頁面上的控件。

我試過這個樣本,我的WaterMark不閃爍。我希望這是它,除非我遇到任何副作用。

如果任何人有其他意見/建議,我打算暫時擱置這個問題。