[英]HTML checkbox onclick called in Javascript
我在嘗試弄清楚如何使我的代碼的某些部分工作時遇到了一些麻煩。
<input type="checkbox" id="check_all_1" name="check_all_1" title="Select All" onclick="selectAll(document.wizard_form, this);">
<label for="check_all_1" onclick="toggleCheckbox('check_all_1'); return false;">Select All</label>
這是我的HTML工作原理(單擊文本將單擊該框)。 它的javascript非常簡單:
function toggleCheckbox(id) {
document.getElementById(id).checked = !document.getElementById(id).checked;
}
但是,當標簽是單擊復選框的時候,我希望輸入發生onclick。 在這個當前時間onClick js不會去。 關於如何做到這一點的一個建議是什么? 我試圖將輸入的onclick添加到標簽的onclick,但這不起作用。
任何建議/解決方案都會很精彩。
如何將checkbox
放入 label
,使標簽自動“點擊敏感”復選框,並給復選框一個onchange
事件?
<label ..... ><input type="checkbox" onchange="toggleCheckbox(this)" .....>
function toggleCheckbox(element)
{
element.checked = !element.checked;
}
這將另外捕獲用戶使用鍵盤切換復選框,某些onclick
不會。
沒有onclick的標簽將按預期運行。 它改變了輸入。 你真正想要的是當你點擊一個標簽時執行selectAll()
,對吧? 然后只在標簽上添加select all all。 或者將輸入包裝到標簽中,並僅為標簽分配onclick
<label for="check_all_1" onclick="selectAll(document.wizard_form, this);">
<input type="checkbox" id="check_all_1" name="check_all_1" title="Select All">
Select All
</label>
jQuery有一個可以做到這一點的功能:
在你的頭腦中包含以下腳本:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script>
(或者只是在線下載jQuery.js文件並在本地包含它)
單擊輸入時,使用此腳本切換復選框:
var toggle = false; $("#INPUTNAMEHERE").click(function() { $("input[type=checkbox]").attr("checked",!toggle); toggle = !toggle; });
如果我明白你想要做什么,那應該做你想要的。
您還可以從HTML中提取事件代碼,如下所示:
<input type="checkbox" id="check_all_1" name="check_all_1" title="Select All" />
<label for="check_all_1">Select All</label>
<script>
function selectAll(frmElement, chkElement) {
// ...
}
document.getElementById("check_all_1").onclick = function() {
selectAll(document.wizard_form, this);
}
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.