我正在使用jQuery 水印插件在我的 ASP.NET 文本框上应用水印。文本框还附加了 ASP.NET 验证。当我单击页面上的任何按钮时,水印就会消失。有趣的是,当我将焦点放在文本框上然后将焦点移开时,会出现水印。因此,单击按钮使水印不可见。
谁能找到为什么会发生这种情况?
我正在使用jQuery 水印插件在我的 ASP.NET 文本框上应用水印。文本框还附加了 ASP.NET 验证。当我单击页面上的任何按钮时,水印就会消失。有趣的是,当我将焦点放在文本框上然后将焦点移开时,会出现水印。因此,单击按钮使水印不可见。
谁能找到为什么会发生这种情况?
根据使用说明:
表单提交 - 该插件会在表单提交之前自动清除所有水印,因此您永远不需要在提交之前手动删除水印。
换句话说,这是设计使然。该功能使您不会意外发布水印并将其误认为是输入的数据。
您可以从第 425 行开始的源代码中看到,它提供了以下解释:
// 为了在表单提交之前可靠地清除所有水印,
// 我们需要将表单的提交函数替换为我们自己的
// 函数。
否则,当表单以编程方式提交时,水印将不会被清除//。
这就是为什么任何回发(全部或部分)都会导致水印被清除的原因。(任何回发都会提交表单。)
如果您希望水印再次显示,对于部分回发,您需要重新加载它。( $.watermark.showAll();
)