我正在尝试根据是否选中复选框在文本框中设置值 该功能附加到复选框的onclick 这个简单的东西不起作用:(
<div>
MyCheckbox
<input type="checkbox" id="Check1" name="FirstCkName"
onclick="testCheckbox(Check1,TextBx1)" />
</div><br>
<div>
CheckBx Text Box
<input id="TextBx1" name="CheckBxName" type="text" />
</div><br>
<script>
function testCheckbox(oCheckbox,oTxtbox)
{
if (oCheckbox.checked == true)
{
document.getElementById("oTxtbox").value=1;
}
else
{
document.getElementById("oTxtbox").value="";
}
}
</script>
链接到JSfiddle https://jsfiddle.net/JS_learner/2750639m/30/
答案 0 :(得分:1)
做类似的事情。
var checkBox = document.getElementById("Check1");
checkBox.addEventListener("click", function(e) {
if (e.target.checked) {
document.getElementById("TextBx1").value = 1;
} else {
document.getElementById("TextBx1").value = "";
}
});
<div>
MyCheckbox
<input type="checkbox" id="Check1" name="FirstCkName" />
</div><br>
<div>
CheckBx Text Box
<input id="TextBx1" name="CheckBxName" type="text" />
</div>
答案 1 :(得分:0)
问题是这一行:
onclick="testCheckbox(Check1,TextBx1)"
这里您正在发明自己的参数。那行不通。 “ click”事件是预定义的Mousevent
,它将提供一个'event'
参数。
“ event.target
”将成为您单击的元素。
这是定义该事件处理程序的方式:
onclick="testCheckbox"
现在您可以像这样编写脚本:
函数testCheckbox(event) { 如果(event.target.checked == true) { document.getElementById(“ oTxtbox”)。value = 1; } 其他 { document.getElementById(“ oTxtbox”)。value =“”; } }