javascript - 用相同的格式,根据下拉菜单的值启用一个HTML表单文本框?

  显示原文与译文双语对照的内容
0 0

我知道这个问题在这里已经经被问过几次,但是我尝试了所有的解决方案。 我正在尝试激活一个字段( 默认值为禁用),当从下拉菜单中选择两个值之一时。 这是我为完成任务而编写的JavaScript函数。

function changeTextBox() {
 comp = document.getElementById('comparator');
 if(comp.value=='equalto'||comp.value=='notequalto')
 document.getElementById('localevalue').disable=false;
 else
 document.getElementById('localevalue').disable=true; 
}

这是下拉菜单

<label style="font-size:16px" for="comparator">Comparator:</label>
<select id="comparator" name="comparator" onChange="changeTextBox();">
 <option value="lessthan">Less Than</option>
 <option value="lessthanequalto">Less Than or Equal To</option>
 <option value="greaterthan">Greater Than</option>
 <option value="greaterthanequalto">Greater Than or Equal To</option>
 <option value="equalto">Equal To</option>
 <option value="notequalto">Not Equal To</option>
 <option value="exists">Exists</option>
</select>

这是当'等于'或者'不等于'从下拉菜单中选择时需要激活的字段。

<label style="font-size:16px" for="value">Value:</label>
<input type="number" id="value" disabled/>

但当我选择其中一个字段时,此框仍然处于停用状态。 谁能告诉我什么是错误的?

时间:原作者:8个回答

0 0

这应该可以

function changeTextBox() {
 var comp = document.getElementById('comparator');
 if(comp.value=='equalto'||comp.value=='notequalto')
 document.getElementById('value').disabled=false;
 else
 document.getElementById('value').disabled=true; 
}

抱歉,页面已经加载,我没注意到dandavis评论。 此外,在我的回复中,我将 document.getElementById('localevalue') 改为 document.getElementById('value')

原作者:
0 0
<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Stack Overflow</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script>
function changeTextBox()
{
 var val=$('#comparator').val();
 alert(val);
 if(val==='equalto' || val==='notequalto')
 {
 $('#value').removeAttr("disabled"); 
 }
 else{$('#value').prop('disabled', true);}
}
</script>
</head>
<body>
 <label style="font-size:16px" for="comparator">Comparator:</label>
 <select id="comparator" name="comparator" onChange="changeTextBox();">
 <option value="lessthan">Less Than</option>
 <option value="lessthanequalto">Less Than or Equal To</option>
 <option value="greaterthan">Greater Than</option>
 <option value="greaterthanequalto">Greater Than or Equal To</option>
 <option value="equalto">Equal To</option>
 <option value="notequalto">Not Equal To</option>
 <option value="exists">Exists</option>
 </select>
<label style="font-size:16px" for="value">Value:</label>
<input type="number" id="value" disabled/>
</body>
</html>

CHEERSS: )

原作者:
0 0

问题是我应该一直使用。禁止。在我的JS函数中禁用。

原作者:
...