我有这些尴尬的复选框,不幸的是由于其他一些编码原因,我无法将它们重命名。我怎样才能获得选中复选框的值。
<tr>
<td align=left colspan=6>
<table border="0">
<tr>
<td><font class="body_text"> windows: <input name="pro1" id="products0" type="checkbox" value="5" test="5"></td>
<td><font class="body_text"> cpu: <input name="pro2" id="products1" type="checkbox" value="2" test="2"></td>
<td><font class="body_text"> keyboard: <input name="pro3" id="products2" type="checkbox" value="3" test="3"></td>
<td><font class="body_text"> mouse: <input name="pro4" id="products3" type="checkbox" value="4" test="4"></td>
</tr>
我正在使用以下代码,该代码在alret中返回undefined
if(document.form.pro1.checked)
alert(document.getElementById('products0').value);
答案 0 :(得分:2)
给你的内表一个ID然后......
myTable=document.getElementById('mytable');
var inputArray=myTable.getElementsByTagName('input');
for(var i=0;i<inputArray.length;i++){
if(inputArray[i].type=='checkbox' && inputArray[i].checked==true){
alert(inputArray[i].value);
}
}
答案 1 :(得分:0)
你有什么理由不能做到
alert(document.form.pro1.value);
答案 2 :(得分:0)
为什么不使用jQuery来获取值?
$(document).ready(function () {
var checkboxValues = Array();
$("form#idOfForm").submit(function () {
$("form input:checkbox:checked").each(function () {
checkboxValues.push($(this).val()); // alternative use checkboxValues.push($(this).attr("value")); if this doesn't work
});
});
});
请务必先包含jQuery库。
答案 3 :(得分:0)
假设您只有4个复选框,并且所有ID都以'products'开头
var cboxId = 'products';
for(var i=0;i<4;i++){
if (document.getElementById(cboxId +i).checked == true){ <br>
// add to some array or call some functions to do checked processing
}
}