JQuery - 如何获取在输入字段的value属性中设置的值?

时间:2011-04-14 15:10:00

标签: javascript jquery

我有一个输入字段<input value="hello"/>。如何以跨浏览器的方式获取value属性中的内容?如果我执行$input.attr('value')$input.val(),则会返回用户在字段中键入的当前值,而不是value属性中设置的值。

如果我input.getAttribute('value'),它会返回我想要的内容,但是跨浏览器兼容吗?

4 个答案:

答案 0 :(得分:4)

使用defaultValue属性:

input.defaultValue;

$("whatever").get(0).defaultValue;

答案 1 :(得分:0)

使用jquery,您将使用:

$('input').attr('value');

但是getAttribute()函数应该是跨浏览器兼容的。

答案 2 :(得分:0)

查看我的演示:http://jsfiddle.net/YUGQz/3/

当您更改文本框的文本(至少在使用jQuery时)时,似乎更新了value属性,因此.attr('value')无法正常工作。

但是如果您尝试此演示:http://jsfiddle.net/YUGQz/4/,您可以看到使用 pure JavaScript,您可以获得原始属性的值:

document.getElementById('foo').getAttribute('value');

如果有人想尝试这种跨浏览器兼容性,那就太好了。只需更改文本框的值,然后按按钮。

答案 3 :(得分:0)

没有足够的积分向Blender添加评论

适用于Firefox,Chrome和Safari,但不能在IE(8)下运行。在IE中,您获得了与jQuery相同的行为。它返回文本框的当前值。