在纯Javascript中单击复选框时获取复选框的ID或值
我正在为我的公司编写一个脚本,单击复选框后:在纯Javascript中单击复选框时获取复选框的ID或值,javascript,html,checkbox,getelementbyid,Javascript,Html,Checkbox,Getelementbyid,我正在为我的公司编写一个脚本,单击复选框后: 激发函数选项selected() 获取该复选框的ID 基于该ID 或者,优选地: 激发函数选项selected() 获取分配给该复选框的整数(当您使用onclick属性调用脚本时,您是在自己调用函数。因此,在本例中,您传递了一个名为e的变量,您从未定义过该变量 相反,您可以传递对所单击复选框的引用: <input type="checkbox" name="checkgrp" onclick="return OptionsSelected
- 激发函数
选项selected()
- 获取该复选框的
ID
- 基于该
ID
- 激发函数
选项selected()
- 获取分配给该复选框的整数(
当您使用
属性调用脚本时,您是在自己调用函数。因此,在本例中,您传递了一个名为onclick
的变量,您从未定义过该变量 相反,您可以传递对所单击复选框的引用:e
<input type="checkbox" name="checkgrp" onclick="return OptionsSelected(this)" value="2" id="eXAMPLE"><LABEL id="LeXAMPLE"></LABEL>
调用函数
时,未定义变量选项Selected
。 要解决这个问题,你可以选择汤姆的解决方案 或 看看你的附加错误消息,我猜你在IE上测试了你的代码。 仅供参考,IE不支持“target”属性,它们使用e
。 所以你可以这样做: 在html中srceelement
<input type="checkbox" name="checkgrp" onclick="return OptionsSelected(window.event)" value="2" id="eXAMPLE"><LABEL id="LeXAMPLE"></LABEL>
这样它就可以在所有浏览器上运行。用这个替换e。它将是:
和onclick=“return options selected(this)”
withalert(e.target.id)
。这应该很好用!有一个很好的解释。谢谢,这解决了我的问题。顺便说一句,通过更改alert(e.id)
到alert(me.id)
),我可以直接传递所需的按位值。这两种方法都达到了最佳效果!此外,如果您还没有这样做,您应该在标签上添加警报(me.value
属性,以便可以单击(例如,for
…
<input type="checkbox" name="checkgrp" onclick="return OptionsSelected(this)" value="2" id="eXAMPLE"><LABEL id="LeXAMPLE"></LABEL>
function OptionsSelected(me) { alert(me.id); }
<input type="checkbox" name="checkgrp" onclick="return OptionsSelected(window.event)" value="2" id="eXAMPLE"><LABEL id="LeXAMPLE"></LABEL>
function OptionsSelected(e) { alert((e.target || e.srcElement).value); }