我有以下代码
<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>
我试图获取DOM中第一个复选框的值
if(document.form.products[0].checked == true) alert(document.form.products[0].value);
这给了我一个提醒,但价值未定义。
感谢
答案 0 :(得分:1)
假设控件的格式为form
(这不是一个好名字),那么问题是您没有任何名为“products”的控件,但是正试图访问具有该名称的控件。
将products
更改为所需控件的名称(或id)(因为名称是唯一的,除去[0]
)或将所有复选框的名称更改为{{ 1}}。
您还有许多与此问题没有直接关系的其他问题。
products
,已弃用,演示文稿和垃圾<font>
(包括使复选框的点击目标大于微小)<label>
过于通用了ID form
document.form.ID_OF_FORM.elements.NAMES_OF_CHECKBOXES[0]
属性是布尔值,checked
是多余的答案 1 :(得分:0)
您的所有输入都具有相同的id
属性。这在语法上是非法的,也可能是你的麻烦的原因。让每一个都独一无二。