我想用复选框写两个名字,并想通过选中Java脚本中的复选框在console.log中显示文本。 我已经试过了 但不起作用
<p>Pakistan <input type="checkbox" id="mycheck" onclick="myFunction()"></p>
<p>India <input type="checkbox1" id="mycheck" onclick="myFunction"></p>
<script>
function myFunction() {
var checkbox = document.getElementById("mycheck")
if (checkBox.checked == true) {
console.log("Pakistan")
}
}
</script>
答案 0 :(得分:0)
您的checkbox.check的首字母为b,而您的声明为小写
<p>Pakistan <input type="checkbox" id="mycheck" onclick="myFunction()"></p>
<p>India <input type="checkbox1" id="mycheck" onclick="myFunction"></p>
<script>
function myFunction(){
var checkbox = document.getElementById("mycheck")
if (checkbox.checked == true){
console.log("Pakistan")
}
}
</script>
答案 1 :(得分:0)
最好的方法是将this
添加到onclick函数中,该函数将引用clicked元素的复选框。然后,您可以检查复选框是否已选中,并打印出父元素的文本以获取“复选框名称”
还要确保您没有type = "checkbox"
而不是checkbox1
,这不是正确的类型。您还希望避免使用重复的ID,将id="mycheck"
更改为类或用不同的名称命名。
工作片段:
<p>Pakistan <input type="checkbox" id="mycheck1" onclick="myFunction(this)"></p>
<p>India <input type="checkbox" id="mycheck2" onclick="myFunction(this)"></p>
<script>
function myFunction(box) {
if (box.checked == true) {
console.log(box.parentElement.textContent)
}
}
</script>
答案 2 :(得分:0)
首先,ID是唯一的,因此将this
传递到函数中并检查是否已选中-然后console.log
将父级文本输入>
function myFunction(checkbox) {
if (checkbox.checked) {
console.log(checkbox.parentNode.textContent);
}
}
<p>Pakistan <input type="checkbox" onclick="myFunction(this)"></p>
<p>India <input type="checkbox" onclick="myFunction(this)"></p>
答案 3 :(得分:0)
function myFunction(chbx) {
if(chbx.checked == true) {
console.log(chbx.parentElement.textContent);
}
}
<p>Pakistan <input type="checkbox" onclick="myFunction(this)"></p>
<p>India <input type="checkbox" onclick="myFunction(this)"></p>