[英]Get ID or value of a checkbox onclick of that checkbox in pure Javascript
單擊復選框后,我正在為我的公司編寫腳本:
OptionSelected()
ID
ID
執行按位運算 或者,最好:
OptionSelected()
<input="checkbox" value="2"
,獲取2
) value
執行按位運算。 為了調試,我讓代碼返回一個警報,里面有值。 我還沒有寫按位運算部分。
這是我的js代碼:
function OptionsSelected(e)
{
alert(e.target.id);
}
和它引用的示例復選框:
<input type="checkbox" name="checkgrp" onclick="return OptionsSelected(e)" value="2" id="eXAMPLE"><LABEL id="LeXAMPLE"></LABEL>
當我在運行時中單擊該框時,出現以下javascript錯誤消息:
有人對此有解決辦法嗎? 我想這很簡單,所以除了提供您的修復程序之外,您還能解釋為什么修復程序有效嗎?
如果您的解決方案通過直接拉取按位value
代替實際ID
節省了我的時間,則可獲贈積分。
注意:我不能使用GetElementByID
方法,因為我將獲取 ID
或value
,而不用它執行操作。
感謝大家!
使用onclick
屬性調用腳本時,就是您自己調用該函數。 因此,在這種情況下,您要傳遞從未定義的名為e
的變量。
相反,您可以將引用傳遞給您單擊的復選框:
<input type="checkbox" name="checkgrp" onclick="return OptionsSelected(this)" value="2" id="eXAMPLE"><LABEL id="LeXAMPLE"></LABEL>
在OptionsSelected
您將執行以下操作:
function OptionsSelected(me)
{
alert(me.id);
}
調用函數OptionsSelected
時未定義變量e
。 要解決此問題,您可以采用湯姆的解決方案。
要么
查看您附帶的錯誤消息,我想您已在IE上測試了代碼。 僅供參考,IE不支持'target'屬性,請使用srcElement
。 所以你可以做這樣的事情:
在html中,
<input type="checkbox" name="checkgrp" onclick="return OptionsSelected(window.event)" value="2" id="eXAMPLE"><LABEL id="LeXAMPLE"></LABEL>
在javascript中,
function OptionsSelected(e)
{
alert((e.target || e.srcElement).value);
}
使其可以在所有瀏覽器上使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.