0

我正在使用 webshim 在 IE8 的文本框中提供 html5 占位符功能。

当我提交表单时,这工作正常 - 如果用户没有输入任何内容,则该字段为空白。

但是,当我尝试通过将 ajax 请求与 onclick 事件挂钩来使事情变得有趣时,以下代码行将返回占位符文本而不是空字符串。

document.getElementById('idOfTextBox').value

我怎样才能避免这种行为?

4

3 回答 3

0

您可以将其设置为替代

if ( document.getElementById('idOfTextBox').value=='placeholder' ) {
    document.getElementById('idOfTextBox').value='';
}

基本上,如果文本框值 = 占位符,它会将值设置为 '' (空字符串)

于 2014-07-25T07:38:54.480 回答
0

V31,超级快!你是对的,jquery 做对了。

$('#idOfTextBox').val() 

给出正确的结果

于 2014-07-25T07:41:02.087 回答
0

由于占位符修复将值放在文本框中并更改样式以显示为占位符,因此您需要在提交之前对其进行修复。请在下面的jquery中找到代码:

$('form').submit(function() {
        $(this).find('.hasPlaceholder').each(function() {
            $(this).val('');
        });
});

不要在要删除占位符的文本框中包含“hasPlaceHolder”类,以便它可以找到它们

根据 OP,jquery 选择器工作

$('#idOfTextBox').val() 
于 2014-07-25T07:42:05.407 回答