复选框根据if语句的位置被选中。 js

时间:2018-10-29 02:38:05

标签: javascript

在我的onload(ini​​t())函数上表现很奇怪。我的函数中有两个if语句,如果我将值为4的复选框作为第一条IF语句,则该复选框将被选中,反之亦然(对于值为5的复选框)。我在db中的值为5,但是如果我将第二if语句作为第一条IF语句移到第二位,则将检查值为4的复选框,然后一切正常。某些功能不正确,请您帮我弄清楚。我将非常感谢您的帮助。如果仍然存在类似问题,我尝试添加其他内容。请建议我,以便我的if语句不会互相取代

function init(){//onload

if(document.getElementById('test').value == 4){
    	document.getElementById('test').checked=true;
   	document.getElementById('testing').checked=false;
    	document.getElementById('testing').disabled =true;
    	document.getElementById('test').disabled =false;
 }
 else if(document.getElementById('testing').value == 5){
	document.getElementById('testing').checked=true;
	document.getElementById('test').checked=false;
	document.getElementById('test').disabled =true;
	document.getElementById('testing').disabled =false;   
}

}
<input type="checkbox" value="4" name="test" id="test">test
<input type="checkbox" value="5" name="testing" id="testing">testing

1 个答案:

答案 0 :(得分:0)

1)对于复选框的输入类型,我们不使用“值”。使用ID或Name来标识它们。

2)下面的代码向您显示选中第二个复选框时,它将禁用第一个复选框。

init()

function init(){//onload
console.log(document.getElementById('4').checked,document.getElementById('5').checked)
if(document.getElementById('4').checked == true){
   	document.getElementById('5').checked=false;
    	document.getElementById('5').disabled =true;
    	document.getElementById('4').disabled =false;
 }
  if(document.getElementById('5').checked == true){
	document.getElementById('4').checked=false;
	document.getElementById('4').disabled =true;
	document.getElementById('5').disabled =false;   
}

}
<input type="checkbox" id="4" id="test" >test
<input type="checkbox" id="5" id="testing"   checked="true">testing

3)下面的代码向您显示选中第一个复选框时,它将禁用第二个复选框。

init()

function init(){//onload
console.log(document.getElementById('4').checked,document.getElementById('5').checked)
if(document.getElementById('4').checked == true){
   	document.getElementById('5').checked=false;
    	document.getElementById('5').disabled =true;
    	document.getElementById('4').disabled =false;
 }
  if(document.getElementById('5').checked == true){
	document.getElementById('4').checked=false;
	document.getElementById('4').disabled =true;
	document.getElementById('5').disabled =false;   
}

}
<input type="checkbox" id="4" id="test"  checked="true">test
<input type="checkbox" id="5" id="testing" >testing

4)两者是相同的代码。