0

我以以下方式创建了一个文本框

<input type="text"  name="email" id="email" class="text_inp2" value="Email" onclick="if(this.value=='Email'){this.value='';}" onblur="if(this.value==''){this.value='Email';}" />

因此,它在文本框中显示默认文本,Email当我编辑它admin@stackoverflow.com时,当我提交(即 PHP Post 函数)时,它仍然将值发布为Emailadmin@stackoverflow.com我不想使用查询字符串方法。无论如何我可以通过使用简单的 PHP Post 函数来摆脱它。

4

2 回答 2

4

您可能想查看 inputplaceholder属性,并为旧版浏览器添加类似http://widgetulous.com/placeholderjs/之类的内容。

<input type="text" name="email" id="email" placeholder="Email">

具有您想要的确切效果。

于 2013-03-29T03:27:12.893 回答
0

你可以使用:

onchange="
if(this.value === this.defaultValue){
    this.value = '';
}
else if (this.value === '') {
    this.value = this.defaultValue;
}"

或者为那些讨厌的旧浏览器 使用占位符属性......</p>

我在我正在进行的一个项目中发现了这个,不确定它是否有效,但如果你有现代化工具,你可以试试这个

if(!Modernizr.input.placeholder){
    $('[placeholder]').focus(function(){
        if($(this).val() === $(this).prop('placeholder')){
            $(this).val('');
            $(this).removeClass('placeholder');
        }
    }).blur(function(){
        if($(this).val() === '' || $(this).val() === $(this).prop('placeholder')){
            $(this).addClass('placeholder');
            $(this).val($(this).prop('placeholder'));
        }
    }).blur();
    $('[placeholder]').parents('form').submit(function(){
        $(this).find('[placeholder]').each(function(){
            if($(this).val() === $(this).prop('placeholder')){
                $(this).val('');
            }
        });
    });
}
于 2013-03-29T03:27:57.053 回答