如何不提交水印文字?

时间:2011-03-06 21:46:07

标签: javascript jquery watermark

我有这段代码:

$(document).ready(function() {
    $('.watermark').focus(function() {
        if (this.className == 'watermark')
        {
            this.className = '';
            this.reset = this.value;
            this.value = '';
        }
    });

    $('.watermark').blur(function() {
        if (this.value == '')
        {
            this.className = 'watermark';
            this.value = this.reset;
        }
    });
});

它工作正常,但是当我提交表单时,水印会作为数据提交。在不修改我的php处理文件的情况下,水印文本是否可以作为空白提交?我的意思是:如果文本框的类是'watermark',则为所述文本框提交一个空白值。我不想修改我的PHP处理文件,但我不介意使用JQuery。最好的解决方案是捕获提交按钮的点击事件,并快速设置文本框的水印值为空白?

2 个答案:

答案 0 :(得分:0)

如果我理解正确的话,这应该有效:

$('form').submit(function(){
    $(this).find('.watermark').each(function(){
        if(!this.reset)
             this.value = '';
    });
});

答案 1 :(得分:0)

在文本输入元素上使用placeholder属性:

<input type="text" placeholder="Text goes here" id="foo" />

由于这在某些较旧的浏览器中不起作用,请在页面中添加HTML5 placeholder属性后备脚本(例如thisthis)。