js问题 大神看看

var checkboxes = $("input[name='check[]']"); var count = checkboxes.length; var str = ''; console.log("count==="+count); for(var i=0;i<count;i++){ var checkbox = checkboxes[i]; if(checkbox.checked){ str += checkbox.value+","; console.log("checkbox==="+checkbox); console.log("str000==="+str); } }

第二个log告诉你checkboxes是个Element对象,所以不能直接log出来。
如果是要log出被选中的checkbox的值,可以直接获取:$('input:checked').alt;

<input type="checkbox" alt="值">

循环输出:
var obj_alt = {};
for (var i = 0; i < $('input:checked').length; i++) {
obj_alt[i] = $('input:checked')[i].alt
}
var str_alt = '';
for (var i in obj_alt) {
str_alt += '第'+i+'个被选中的checkbox的值为:'+$('input:checked')[i].alt
}追问

这里是有多个值的var checkboxes = $("input[name='check[]']");

追答

是要获取所有被选中的checkbox的值么?
首先,直接获取TEXT中的TEXT并不是一个好方法,建议直接获取input标签中的alt\value或其他标签内属性。
其次,多个checkbox表单可以用name来区分,比如$("input[name='form1']:checked");

追问

有点晕。。。我的那个不是input 是table tr td

追答

和table没关系的啊亲。。。
举个例子:
View:
喜欢的食物:
苹果
香蕉
橘子
喜欢的汽车:
奔驰
宝马
奥迪

获取选中的”喜欢的食物“:
var obj_food_value = {};
for(var i = 0; i<$("input[name='food']:checked").length; i++){
obj_food_value[i] = $("input[name='food']:checked").eq(i).val();
}

对象 obj_food_value是”喜欢的食物“的值集合(用数组也可以,而且数组读写更方便);

获取选中的”喜欢的汽车“,同上。

-----------------------------------------------------------------------------

温馨提示:答案为网友推荐,仅供参考
相似回答