jQuery在.each循环中获取输入值
我试图在复选框的每个循环中获取输入值,我无法弄清楚如何使其工作,值保持输出作为第一个复选框值。
$('.custemb, input[name=cb], input[class=multadd]').live("click", function() { $('input[class=multadd]:checked').each(function(index) { val = index + 2; valu = $('input[class=multadd]:checked').val(); multiz = multiz + '&aid' + val + '=' + valu; }); });
问题是变量valu
的输出是每个循环的第一个复选框,而不是循环的当前复选框,我需要当前值。
有任何想法吗?
您可以使用this
来访问循环中的当前元素:
valu = $(this).val();
当前元素也作为参数发送到回调函数,因此您可以将其拾取:
.each(function(index, elem) {
然后使用参数:
valu = $(elem).val();
$('.custemb, input[name=cb], input[class=multadd]').live("click", function() { $('input[class=multadd]:checked').each(function(index) { var $this = $(this); val = index + 2; valu = $this.val(); multiz = multiz + '&aid' + val + '=' + valu; }); });
使用this
命令查找单击的控件
$('input[class=multadd]:checked').each(function(index) { val = index + 2; valu = $(this).val(); multiz = multiz + '&aid' + val + '=' + valu; });
var texts= $(".class_name").map(function() { return $(this).val(); }).get();