【问题标题】:ASP.NET button click clears jQuery watermarkASP.NET 按钮单击清除 jQuery 水印
【发布时间】:2013-09-23 07:57:12
【问题描述】:

我正在使用jQuery watermark plugin 在我的 ASP.NET 文本框上应用水印。文本框还附加了 ASP.NET 验证。当我单击页面上的任何按钮时,水印就会消失。有趣的是,当我将焦点放在文本框上然后将焦点移开时,会出现水印。因此,单击按钮使水印不可见。

谁能找到为什么会这样?

【问题讨论】:

标签: jquery asp.net jquery-plugins watermark


【解决方案1】:

根据Usage Notes:

表单提交 - 插件自动清除所有水印 在表单提交之前,因此您永远不需要手动删除 提交前的水印。

换句话说,这是设计使然。该功能是为了防止您不小心张贴水印并将其误认为是输入的数据。

你可以从第 425 行开始的source code 看到,它提供了以下解释:

// 为了在表单提交前可靠地清除所有水印,
// 我们需要将表单的提交函数替换为我们自己的
// 功能。否则表单时水印不会被清除
// 以编程方式提交。

这就是为什么任何回发(全部或部分)都会导致水印被清除的原因。 (任何回发都会提交表单。)

如果您希望水印再次显示,对于部分回发,您需要重新加载它。 ($.watermark.showAll();)

【讨论】:

  • 我尝试在更新面板和页面加载中调用 $.watermark.showAll(),但没有运气。应该放在哪里?
  • function pageLoad() {$.watermark.showAll();} 添加到您的javascript。每次您的页面回帖时都会调用它。这里有一篇短文讨论这个问题:Simplify ASP.NET AJAX client-side initialization
猜你喜欢
  • 2017-09-21
  • 1970-01-01
  • 1970-01-01
  • 2019-12-17
  • 2017-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多