jquery WaterMark Textbox在回发时闪烁

时间:2011-02-14 18:18:49

标签: jquery asp.net watermark

我想在输入表单上使用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水印和回发的问题。

1 个答案:

答案 0 :(得分:0)

看起来我的选项不是使用下拉列表的自动回发,我将不得不使用jquery进行下拉更改的ajax调用,并使用来自ajax调用的返回数据更新页面上的控件。

我在一个样本中试过这个,我的WaterMark没有眨眼。除非我遇到任何副作用,否则我希望是这样。

如果有人有其他意见/建议,我会暂时搁置一段时间。