我正在尝试从<form>
标记之外的文本框中获取值。
这三个文本框具有相同的类名。我想获得他们的价值并在以后使用它们。
我在下面jQuery
的警报部分收到错误。
HTML
<input type="text" class="className">
<input type="text" class="className">
<input type="text" class="className">
的jQuery
var $j_object = $(".className");
$j_object.each( function(i){
alert($j_object[i].val())
});
答案 0 :(得分:2)
尝试在此背景下使用.eq(index)
,
var $j_object = $(".className");
$j_object.each( function(i){
alert($j_object.eq(i).val());
});
或者您可以使用this
内的.each()
值来简化任务,
var $j_object = $(".className");
$j_object.each( function(){
alert($(this).val());
});
如果使用括号表示法来访问jquery元素集合,那么将返回普通的javascript对象。而且它的原型中没有jquery函数。
答案 1 :(得分:1)
您可以使用jQuery中的.map()
函数将文本框值保存到数组中。
工作示例
var array = $('.className').map(function(){
return $(this).val()
}).get();
alert(array)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="className" value="1">
<input type="text" class="className" value="2">
<input type="text" class="className" value="3">