如何在单击组合框中的选择项时启用已禁用的HTML表单元素
How to enable a disabled HTML form element when a choice from a combobox has been clicked?
我在我的HTML表单中有这个组合框,当点击其中一个选项时,将启用另一个被禁用的组合框。
下面是包含一个选项的组合框的代码,该选项将禁用另一个组合框
Type of expense: <select name="expType" onchange="document.getElementById('expTypeVal').value=this.options[this.selectedIndex].text">
<option value="direct labor"> direct labor </option>
<option value="salary(sales)"> salary(sales) </option>
<option value="salary (kitchen)"> salary(kitchen) </option>
<option value="direct materials"> direct materials </option>
<option value="indirect materials"> indirect materials </option>
<option value="fare"> fare </option>
<option value="kitchen supplies"> kitchen supplies </option>
<option value="accounts payable"> accounts payable </option>
<option value="rent"> rent </option>
<option value="general"> general </option>
<option value="repair/maint.(furn./fixt.)"> repair/maint.(furn./fixt.) </option>
<option value="repair/maint.(equi./uten.)"> repair/maint.(equi./uten.) </option>
<option value="repair/maint.(improv)"> repair/maint.(improv.) </option>
<option value="drawings"> drawings </option>
</select>
每当应付账款选项被选中时,我希望启用一个组合框。
下面是另一个组合框的代码。注意:这个是禁用的。
<select disabled name="acctPayables" onchange="document.getElementById('acctPayVal').value=this.options[this.selectedIndex].text">
<option value="N/A"> --- </option>
<option value="random1"> random1 </option>
<option value="random2"> random2 </option>
</select>
检查一下我是否修改了一下
<select disabled name="acctPayables" id="acctPayables">
<option value="N/A"> --- </option>
<option value="random1"> random1 </option>
<option value="random2"> random2 </option>
</select>
<select name="expType" id="expType" >
<option value="direct labor"> direct labor </option>
<option value="salary(sales)"> salary(sales) </option>
<option value="salary (kitchen)"> salary(kitchen) </option>
<option value="direct materials"> direct materials </option>
<option value="indirect materials"> indirect materials </option>
<option value="fare"> fare </option>
<option value="kitchen supplies"> kitchen supplies </option>
<option value="accounts payable"> accounts payable </option>
<option value="rent"> rent </option>
<option value="general"> general </option>
<option value="repair/maint.(furn./fixt.)"> repair/maint.(furn./fixt.) </option>
<option value="repair/maint.(equi./uten.)"> repair/maint.(equi./uten.) </option>
<option value="repair/maint.(improv)"> repair/maint.(improv.) </option>
<option value="drawings"> drawings </option>
</select>
<script>
var select = document.getElementById("expType");
var select1 = document.getElementById("acctPayables");
select.onchange = function()
{
if(this.value == 'accounts payable')
{
select1.removeAttribute('disabled');
}
else
{
var att = document.createAttribute("disabled");
att.value = "";
select1.setAttributeNode(att);
}
}
</script>
请检查以下相同的jsfiddle代码
http://jsfiddle.net/otkcbbh2/试试这个
$('select[name=expType]').change(function(){
if($('select[name=expType] option:selected').val() === '-1') {
$('select[name=acctPayables]').attr('disabled', true);
} else {
if($('select[name=acctPayables]').attr('disabled')) {
$('select[name=acctPayables]').removeAttr('disabled');
} else {
$('select[name=acctPayables]').attr('disabled', true);
}
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Type of expense: <select name="expType" onchange="document.getElementById('expTypeVal').value=this.options[this.selectedIndex].text">
<option value="-1"> --- </option>
<option value="direct labor"> direct labor </option>
<option value="salary(sales)"> salary(sales) </option>
<option value="salary (kitchen)"> salary(kitchen) </option>
<option value="direct materials"> direct materials </option>
<option value="indirect materials"> indirect materials </option>
<option value="fare"> fare </option>
<option value="kitchen supplies"> kitchen supplies </option>
<option value="accounts payable"> accounts payable </option>
<option value="rent"> rent </option>
<option value="general"> general </option>
<option value="repair/maint.(furn./fixt.)"> repair/maint.(furn./fixt.) </option>
<option value="repair/maint.(equi./uten.)"> repair/maint.(equi./uten.) </option>
<option value="repair/maint.(improv)"> repair/maint.(improv.) </option>
<option value="drawings"> drawings </option>
</select>
<select disabled name="acctPayables" onchange="document.getElementById('acctPayVal').value=this.options[this.selectedIndex].text">
<option value="-1"> --- </option>
<option value="random1"> random1 </option>
<option value="random2"> random2 </option>
</select>
添加如下的jQuery代码
<script>
$(document).ready(function(){
$('select[name=expType]').change(function(){
$('select[name=acctPayables]').attr('disabled', false);
});
});
</script>
相关文章:
- Rails-带有单选按钮的表单,带有启用/禁用附加元素的javascript操作
- 命名一个在“”和“”之间切换元素的函数;启用”;以及“;被禁用”;州
- 启用具有不同元素的复选框
- 仅对特定的html元素启用幻灯片放映
- 如何使用复选框启用多个元素
- 在检查单选按钮检查状态后启用/禁用表单元素
- Fetch元素鼠标当前指向的Chrome开发工具已启用
- 如何在启用mCustomScrollbar时将元素拖动到外部
- 启用和禁用所有子元素
- Div元素并没有引导点击以启用拖动功能
- 仅为特定 html 元素启用刷新
- 使用 jquery/javascript 从 iFrame 启用/禁用父元素的 HTML 超链接(对于给定的结构)
- 在选择元素中选择第一个启用的选项
- 如何使用Javascript/jQuery隐藏/显示启用/禁用HTML元素
- jQuery 性能问题,通过为新元素启用拖放
- 复选框启用 Onload 以显示其他元素
- 仅对视口中的元素启用Ajax Rest调用
- 如何在提交时启用HTML元素
- 为什么在禁用文档后不能重新启用文档中的元素
- 使用zurbfoundation基于表单的其他元素启用/禁用提交按钮