0

这就是我在 jQuery 1.9.1 之前获取输入文本值的方式

<input type="text" id="input_text_Id" 

...

$("#input_text_Id").attr('value')

当我将我的 jQuery 版本升级到 1.9.1 时它不再起作用,所以显然它已被弃用。

我还有哪些其他选择?

我也很好奇,为什么 jQuery 创建者不断删除可以正常工作的功能?我假设安全漏洞可能是其中之一。

4

5 回答 5

3

不应该以下工作:

$("#input_text_Id").val();

这是我一直用的。

这是关于 val() 的文档

于 2013-03-29T01:59:35.263 回答
1

attr("value")(和本机getAttribute("value"))返回属性

val()(和本机value)返回属性

这里的重要区别是属性本质上是“默认值”,而属性是当前值。

是一个演示。

于 2013-03-29T02:00:00.237 回答
0

正确的方法是通过val() 函数使用检索值属性。

于 2013-03-29T02:00:23.110 回答
0

如果您在输入元素的当前值之后。然后只需使用.val()

$("#input_text_Id").val();

.attr('value')返回属性的值value(在您键入文本时不会更改),而不是.value属性(确实会更改)。

输入此文本框并查看您的控制台以了解我的意思。

于 2013-03-29T02:01:20.203 回答
0

$('#input_text_Id').val();

至于 jQuery 团队为什么选择去掉你以前使用的方法,我不知道。我怀疑这个方法被关闭了,因为从输入中获取值并不是真正从它的“值”属性派生的。我相信获取输入的实际值是从 DOM 中输入的“值”属性中提取的。

于 2013-03-29T02:02:01.993 回答