0

所以我在禁用这个东西时遇到了麻烦。我正在尝试使用 IF 语句和单选按钮来禁用。我试过没有如果没有成功。如果可以的话请帮忙!我的代码如下。

<html>
<h1>Convert Temperature</h1>
<body>
<input id="example" type="radio" onClick="toggle('example', 'disableMe')" name="Radio" value="Radio"> 
From Fahrenheit to Celsius </br>
<input id="example" type="radio" onClick="toggle('example', 'disableMe')" name="Radio" value="Radio"> From Celsius to Fahrenheit
</br>
</br>
</br>
<form name="converter">
Celsius: <input id="disableMe" type="text" name="celsius" onChange="CelsiusConverter()"><br />
Fahrenheit: <input id="disableMe" type="text" name="fahrenheit" onChange="FahrenheitConverter()"><br />
<input type="button" value="Convert!" />
</form>
</body>
<script language="JavaScript">
<!--
function CelsiusConverter(){
document.converter.fahrenheit.value = (document.converter.celsius.value * 9 / 5) + 32
}
function FahrenheitConverter(){
document.converter.celsius.value = (document.converter.fahrenheit.value - 32) * 5 / 9
}
//-->
function toggle(radioID, toggleID) { 
var radio = document.getElementById(radioID); 
var toggle = document.getElementById(toggleID); 
updateToggle = radio.checked ? toggle.disabled=true : toggle.disabled=false;

if (radioID = checked)
{
toggle.disable=true;
}
}
</script>
</html>

我知道我在那里的 IF 看起来不正确,需要修复一些东西,但我不知道如何!

4

3 回答 3

1
 if (radioID = checked) {
toggle.disable=true;
}

应该

if(radioID == checked) {
toggle.disable = true;
}

因为您没有将checked 的值分配给radioID (=),而是比较两者(==)。

于 2012-11-14T23:57:07.683 回答
0

代码存在一些问题。这是对我有用的一个,并进行了一些简化:

首先,更改您的控件,使它们具有不同的 ID 和 onClick:

<input id="example1" type="radio" onClick="toggle(1)" name="Radio" value="Radio"> 
...
<input id="example2" type="radio" onClick="toggle(2)" name="Radio" value="Radio">
...
<input id="disableMe1" type="text" name="celsius" onChange="CelsiusConverter()">
...
<input id="disableMe2" type="text" name="fahrenheit" onChange="FahrenheitConverter()">
...

最后,将其编码为您的切换功能:

function toggle(id) { 
var base = 'disableMe';
var disable = document.getElementById(base+id); 
var enable = document.getElementById(base+(id == 1 ? 2 : 1));
disable.disabled = true;
enable.disabled = false;
}
于 2012-11-15T00:11:05.810 回答
0
  • 为了挑剔,您应该更喜欢 === 到 == 进行比较。
  • 您还应该使 id 在您的页面中独一无二。
  • 更改<script language="javscript"<script type="text/javascript"
  • 您认为checked比较中的价值是多少?
  • jQuery会在这里帮助你
于 2012-11-15T00:13:15.093 回答