我是初学者所以请耐心等待我。我查找了这个问题并没有找到解决方案。 我有以下代码:
在头上
<script>
function ledonoff(led)
{
if (document.getElementById('ck1').checked == true){
document.getElementById('led1').style.backgroundImage="url('Image/led_green.gif')";}
else {
document.getElementById('led1').style.backgroundImage="url('Image/led_red.gif');}
}
</script>
在身上
<div id="led1"></div>
<input name="" type="checkbox" id="ck1" onchange="ledonoff('led1')" value=""/>
我想让函数ledonoff在函数中使用2个参数:div id被更改 和要在函数的if上验证的复选框。 谁能帮我这个。 谢谢
答案 0 :(得分:1)
将您的代码修改为:
<script>
function ledonoff(isChecked, elementId)
{
if (isCkecked){
document.getElementById(elementId).style.backgroundImage="url('Image/led_green.gif')";}
else {
document.getElementById(elementId).style.backgroundImage="url('Image/led_red.gif');}
}
</script>
和身体:
<input name="" type="checkbox" id="ck1" onchange="ledonoff(this.checked, "led1")" value=""/>Led 1
答案 1 :(得分:1)
将功能更改为:
function ledonoff(led,checkBox){
var theDiv = document.getElementById(led),
check = document.getElementById(checkBox);
if (check.checked == true){
theDiv.style.backgroundImage="url('Image/led_green.gif')";
} else {
theDiv.style.backgroundImage="url('Image/led_red.gif')";
}
}
和htmlonchange为:
"ledonoff('led1','ck1')"
答案 2 :(得分:0)
您可以简单地传递它:onchange="ledonoff('led1', 'ck1')"
。
但是你的函数期待一个参数,所以你需要修改它。
function ledonoff(led) -> function ledonoff(led, ck)
请注意
这种类型的JavaScript称为Obtrusive Javascript。最近设计原则的转变是将您的Javascript和HTML放在完全独立的文件中。您应该使用DOM
向DOM
元素添加事件侦听器,而不是以属性方式为事件分配函数。 Here是一个很好的教程,可以帮助您开始实现这个想法。
答案 3 :(得分:0)
这样做:
<script>
function ledonoff(led,checkbox){
if(document.getElementById(checkbox).checked == true){
document.getElementById(led).style.backgroundImage="url('Image/led_green.gif')";
}else{
document.getElementById(led).style.backgroundImage="url('Image/led_red.gif')";
}
}
</script>
和你的html:
<div id="led1"></div>
<input name="" type="checkbox" id="ck1" onchange="ledonoff('led1','ch1')" value=""/>Led1
我想,就是这样。我假设您的图像路径是正确的。
答案 4 :(得分:0)
使用此功能。
</script>
function ledonoff(led,chk)
{
if (document.getElementById(chk).checked == true){
document.getElementById(led).style.backgroundImage="url('Image/led_green.gif')";}
else {
document.getElementById(led).style.backgroundImage="url('Image/led_red.gif');}
}
</script>
<div id="led1"></div>
<input name="" type="checkbox" id="ck1" onchange="ledonoff('led1','ck1')" value=""/>Led 1