【发布时间】:2009-08-10 21:38:11
【问题描述】:
我正在使用 jQuery watermarkinput 插件在文本框输入字段中放置提示文本。当页面 POST 回服务器时,水印值作为输入框值 POST。
如何防止发布水印值?
【问题讨论】:
-
您能否提供一些示例代码,以便我们了解您正在使用什么?
我正在使用 jQuery watermarkinput 插件在文本框输入字段中放置提示文本。当页面 POST 回服务器时,水印值作为输入框值 POST。
如何防止发布水印值?
【问题讨论】:
在提交时没有验证水印文本,你被卡住了。水印插件 (digitalbush.com) 帮不了你。
编辑
显然,它可以(全球)。如评论中所述:
$.Watermark.HideAll(); // hide's all watermark text
$.Watermark.ShowAll(); // restores watermark text
【讨论】:
我不熟悉这个插件。但是,您可以在表单中添加一个 onsubmit() 事件处理程序,并检查输入框是否包含有问题的水印文本,并在提交之前将其清除,如下面的简化示例所示。
<form id="myform">
<input type="text" id="myWatermarkedBox" value="Watermark Text"/>
</form>
然后在你的javascript中:
$(function(){
$("myform").submit(function(){
if($("myWatermarkedBox").val() == "Watermark Text")){
$("myWatermarkedBox").val('');
}
});
});
【讨论】:
我不知道那个插件,但是当显示水印时(很可能),您的表单文件会分配一个类。在提交之前,检查水印类的字段,如果它存在,则该字段的设置值为空
【讨论】:
听起来您的提示文本正在直接添加到输入值中。因此在 POST 数据中发送。我猜你试图使用水印插件覆盖提示文本(虽然我不熟悉这个插件),但它似乎不起作用。
当问题有更多信息时,我会更新答案。
【讨论】: