无法使用 Javascript 禁用选择字段
Can't disable a select field using Javascript
几个小时
以来一直在用头撞墙,但我只是在禁用选择字段时遇到问题。 我想知道 - 但Javascript只回答。 抱歉,这个项目不使用jquery。
代码被缩短了,有点缩短了...
总的来说,这是 HTML:
<form>
.
. Code below triggers the enable/disable
<td>
<fieldset name="GM" id="GM" onchange="grpChg();">
<legend>Select One:</legend>
<input name="GM" id="GM1" type="radio" value="1"/>Opt1<br />
<input name="GM" id="GM2" type="radio" value="2"/>Opt2<br />
<input name="GM" id="GM3" type="radio" value="3"/>Opt3<br />
<input name="GM" id="GM4" type="radio" value="4"/>Opt4<br />
</fieldset>
</td>
.
.
. This is the section that should be enabled/disabled:
<table>
<tr>
<td>
<strong>Section 1<br /></strong>
Option 1<br />
</td>
<td>
<select name="Opt1_Enroll" id="Opt1_Enroll">
<option value=""></option>
<option value="1">Yes</option>
<option value="2">No</option></select>
</select>
</td>
</tr>
<tr>
<td>
<strong>Section 2<br /></strong>
Option 2
</td>
<td>
<select name="Opt2_Enroll" id="Opt2_Enroll">
<option value=""></option>
<option value="1">Yes</option>
<option value="2">No</option></select>
</select>
</td>
</tr>
</table>
.
.
.
</form>
现在 JavaScript 函数:
function grpChg() {
var tt = document.getElementsByName('GM');
var enrollValue = 0;
for (var i = 0; i < tt.length; i++) { ;
if (tt[i].type === "radio" && tt[i].checked) {
enrollValue = tt[i].value;
}
}
if (enrollValue == "2") {
alert("Opt2");
document.getElementById("Opt1_Enroll").disable = true;
document.getElementById("Opt2_Enroll").disable = false;
} else {
alert("NOT Opt2");
document.getElementById("Opt1_Enroll").disable = false;
document.getElementById("Opt2_Enroll").disable = true;
}
}
javascript 函数被调用得很好,我按预期收到警报。 但是 - 虽然没有错误(运行火虫),但我也没有禁用/启用选择(即Op1_Enroll或Opt2_Enroll)。
相同类型的javascript和HTML适用于其他几个选择 - 但不是这个。 知道为什么吗?
你有一个错别字。
它应该是disabled
的,而不是disable
.
document.getElementById("Opt2_Enroll").disabled = true;
您可以在此处查看JS中不同HTML输入的所有可用属性。
相关文章:
- 选择字段-更改popover颜色
- 构建HTML选择字段并使用JavaScript数组选择选项
- 无法使用 Javascript 禁用选择字段
- 在应用 jQuery.Selected 时,使用 jQuery.Validate 来验证选择字段时,暴露错误
- 取消选中特定复选框时,React切换不删除的选择字段
- 添加值以动态选择字段
- jquery自动更新两个选择字段
- 如何在Sencha Touch应用程序的选择字段内自定义列表
- 自动完成PHP表单选择字段中的用户姓氏
- 添加选项以使用 javascript 从 json 文件中选择字段
- Angular ng通过ng选项重复多个选择字段,而不显示已选择的数据
- 如何创建具有空白选项和未筛选状态的动态选择字段
- 选择字段无需按钮即可工作,但在选择字段中不会更改
- 合并到选择字段
- 动态选择字段,在另一个选择字段 - Laravel 5.2 和 JS 中更改后重新填充
- 检查 2 个输入字段和一个选择字段,以便在它们全部填写后进行更改
- ReactJS - 如何在单击按钮时添加更多文本、文本字段、选择字段
- 检查表行的所有输入/选择字段是否都有值
- 当从第一个选项中选择一个选项时,如何取消隐藏另一个选择字段
- 具有相同名称和不同 id 的选择字段数组