我试图让输入值在复选框中的每一个循环,我无法弄清楚如何得到这个工作,值保持输出作为第一个复选框值。
$('.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();