如何解决开关javascript
我在开/关开关上有个问题。我有一个代码,它不能正常工作,因为它在我写checked的时候可以正常工作,但我想要两种情绪,开和关,当不写checked的时候它不能正常工作,当我写checked的时候,它不能正常工作,当我写checked的时候,它可以正常工作(如何解决开关javascript,javascript,html,Javascript,Html,我在开/关开关上有个问题。我有一个代码,它不能正常工作,因为它在我写checked的时候可以正常工作,但我想要两种情绪,开和关,当不写checked的时候它不能正常工作,当我写checked的时候,它不能正常工作,当我写checked的时候,它可以正常工作( 函数DisEn(X){ document.A.T1.disabled=X; document.A.T2.disabled=X; } HTML: <form name="A" method="get" action="switch
函数DisEn(X){
document.A.T1.disabled=X;
document.A.T2.disabled=X;
}
HTML:
<form name="A" method="get" action="switch.php">
<div class="onoffswitch">
<input type="checkbox" name="onoffswitch" value="off"class="onoffswitchcheckbox"
id="myonoffswitch" onClick="DisEn()" checked>
<label class="onoffswitch-label" for="myonoffswitch">
<div class="onoffswitch-inner"></div>
<div class="onoffswitch-switch"></div>
</label>
</div>
<input type="text" name="T1" value="A" disabled>
<input type="text" name="T2" value="B" disabled>
<input type="submit" name="T4" value="Submit" >
</form>
function DisEn(){
if(document.A.onoffswitch.checked == false)
{
document.A.T1.disabled=false;
document.A.T2.disabled=false;
}
else
{
document.A.T1.disabled=true;
document.A.T2.disabled=true;
}
}
这里是jsfiddle使用onchange=DisEn(this)
如下示例:
<script>
function DisEn(element){
if (element.checked === true) {
document.A.T1.disabled=true;
document.A.T2.disabled=true;
element.value="off";
} else {
document.A.T1.disabled=false;
document.A.T2.disabled=false;
element.value="on";
}
}
</script>
<form name="A" method="get" action="switch.php">
<div class="onoffswitch">
<input type="checkbox" name="onoffswitch" value="off"
class="onoffswitchcheckbox" id="myonoffswitch"
onchange="DisEn(this)" checked = "checked" />
<label class="onoffswitch-label" for="myonoffswitch">
<div class="onoffswitch-inner"></div>
<div class="onoffswitch-switch"></div>
</label>
</div>
<input type="text" name="T1" value="A" disabled = "disabled" />
<input type="text" name="T2" value="B" disabled = "disabled" />
<input type="submit" name="T4" value="Submit" />
</form>
函数DisEn(元素){
if(element.checked==true){
document.A.T1.disabled=true;
document.A.T2.disabled=真;
element.value=“关”;
}否则{
document.A.T1.disabled=false;
document.A.T2.disabled=false;
element.value=“on”;
}
}
您可以检查。如果它有问题或我忘记做什么,请通知,我将更新演示
使用此选项,您将能够为每个复选框设置它,只需使用
onchange=DisEn(此选项)
在您的复选框上。请使用document.getElementById
而不是不推荐的document.form.name
语法。可能也会解决您的问题。使用JFiddle。在这里,我为您创建了一个:@OliverWatkins,您的不起作用,伙计!我只是粘贴了他所做的。我没有在那里提出解决方案为什么不只是document.A.T1.disabled=element.checked;
document.A.T2.disabled=element.checked;
而不是if/else
语句:@Bondye因为我想写,因为我想为OP:)写一个不可理解的代码。我想你可以用这种方式更容易理解它。你给了一个更短的方法。我很感激它更新了。谢谢@达格利米奥:谢谢!你的代码有效!但我想在php页面上关闭或打开值,我的意思是,当开关关闭时,用提交键关闭,而它打开时,则打开“打开”。@sepidehfaraji欢迎您!然后,您只需更改复选框的值。我会更新的。
<script>
function DisEn(element){
if (element.checked === true) {
document.A.T1.disabled=true;
document.A.T2.disabled=true;
element.value="off";
} else {
document.A.T1.disabled=false;
document.A.T2.disabled=false;
element.value="on";
}
}
</script>
<form name="A" method="get" action="switch.php">
<div class="onoffswitch">
<input type="checkbox" name="onoffswitch" value="off"
class="onoffswitchcheckbox" id="myonoffswitch"
onchange="DisEn(this)" checked = "checked" />
<label class="onoffswitch-label" for="myonoffswitch">
<div class="onoffswitch-inner"></div>
<div class="onoffswitch-switch"></div>
</label>
</div>
<input type="text" name="T1" value="A" disabled = "disabled" />
<input type="text" name="T2" value="B" disabled = "disabled" />
<input type="submit" name="T4" value="Submit" />
</form>