如果我手动将文本输入到输入元素中,我可以调用$("#myinput").val()
并获取值。
如果我先将其设置为$("#myinput").val("foo")
,然后拨打$("#myinput").val()
,则不会返回任何内容。
答案 0 :(得分:1)
第二种情况也请拨打$("#myinput").val()
问题是$("input").val()
返回第一个输入的值(jQuery doc)。
修改强>
在你正确之后,我只能说,我相信它应该有效,因为你在两种情况下都使用了两个相同的选择器。
可能是,你有一些代码,修改这些调用之间的值。或者您可能有多个输入具有相同的 id ..
答案 1 :(得分:1)
确保您在id="myinput"
$("input").val()
会返回页面第一个输入的值
如果#myinput
不是第一个,则不会显示。
要获得所有 所有的值,您可以执行页面上的输入:
$('input').each(function(){
alert($(this).val());
});
答案 2 :(得分:0)
如果页面上有多个输入,则它不会返回值,因为$('input')
是一个输入数组。
你必须做类似的事情
$('input').each(function() {
alert($(this).val());
});
显示所有vals。否则,请使用$('#myInput').val();
答案 3 :(得分:0)
它对我有用:
<input id="i" />
JS
$('#i').val('hi');
console.log($('#i').val());
小提琴:http://jsfiddle.net/mohsen/mpjmT/
您的代码中可能有一个条件语句,阻止设置值行运行。