javascript在for语句中创建多个复选框 [英] javascript to create multiple checkboxes in for statement
问题描述
我正在尝试创建一堆复选框,而不必使每个复选框都具有:
Hi I am trying to create a bunch of checkboxes without having to make each one currently I have:
function test(obj) {
if (document.getElementByID("info").checked == true) {
document.getElementById("gender")[0].disabled = true;
}
}
它适用于一个复选框,但我一直在尝试使用以下代码:
and it works for one checkbox but I have been trying to use the code below:
function test(obj) {
var x = obj.name;
var rowCount = $('#List tr').length;
for (var i = 0; i rowCount-1; i++) {
if (x == document.getElementByID("info"["+i+"]).checked == true) {
document.getElementById("gender"["+i+"]).disabled = true;
}
}
}
创建尽可能多的复选框我想要没有我必须做的每一个,但似乎都行不通。
to create as many checkboxes as I want without me having to make each one but it doesn't seem to be working.
推荐答案
好,让我们从开始:
要在javascript中创建复选框,您必须执行以下操作:
To create a check-box in javascript you must do something like this:
var checkbox = document.createElement("input");
checkbox.type = "checkbox";
然后将您的复选框添加到网页的div中,您将执行以下操作:
Then to add your checkbox into a div on your webpage you would do something like:
document.getElementById("your_div_id").appendChild(checkbox);
然后要查看复选框是否被选中,您可以像这样查看 checked属性:
Then to see if the checkbox is checked you look at the "checked" property like so:
var isChecked = !!document.getElementById("your_checkbox").checked;
if(isChecked == true){
// Do whatever you want
}
这是一个可以通过一堆复选框循环的函数
Here's a function that would loop through a bunch of checkboxes
function testCheckBoxes(container_id){
var checkboxes = document.querySelector("#" + container_id + " > input[type='checkbox']");
for(var i = 0; i < checkboxes.length; i++){
if(!!checkboxes[i].checked == true){
// Your code
}
}
[侧面说明:我使用的是 document.querySelector
以获得一致性,但由于我认为您使用的是jquery,请改用 $
]
如果您想做某事当有人点击您的复选框时,使用事件侦听器:
[Side Note: I'm using document.querySelector
for consistency but since I think you're using jquery then use $
instead]
If you want to do something when someone clicks on your checkbox the use an event listener:
var list = document.getElementsByClassName("checkbox");
for(var i = 0; i < list.length; i++){
list[i].addEventListener('click', function(event){
if(!!event.target.checked == true){
// Do something
}
}, true);
}
希望这足以帮助您入门。祝你好运=)
Hopefully this is enough to get you started. Good Luck =)
这篇关于javascript在for语句中创建多个复选框的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!