根据从<select>元素
Disable different Inputs based on Option selected from a <select> element
我正在创建一个联系我们的形式,它应该承认多个文本输入,一个文本区域&;提交按钮。在这个表单的上方应该是一个下拉选择,有三个选项。在这个例子中,我使用了"选择一个选项","选项1"&"Option2"。
我试图得到它,以便所有的元素上的形式是禁用的,除非'选项1'被选中。因此,如果选择了其他两个中的任何一个,则用户不应该访问该表单。
目前我已经设法弄清楚如何禁用一个输入,但另一个似乎不一样的工作方式。这背后的原因是什么?另外,我怎么能让它禁用其他元素?
function checkOption(obj) {
var input = document.getElementById("input");
input.disabled = obj.value == "A";
}
<p>Contact Us Form </P>
<select id="menu" onChange="checkOption(this)">
<option value="A">Select An Option</option>
<option value="B">Option 1</option>
<option value="A">Option 2</option>
</select>
<br>
<p> First Name </p>
<input type="text" id="input" disabled>
<p> Second Name </p>
<input type="text" id="input" disabled>
<p>Enquiry</p>
<textarea rows="4" cols"50" id="textarea">
Lorem ipsum dolor sit amet, an modo mucius eum,
sanctus concludaturque qui no. Stet esse intellegat no eam,
nonumes eligendi disputationi ad usu.
</textarea>
<br>
<input type="submit" value="Submit">
试试这个:首先不要对多个输入(元素)使用相同的id,使用class或name属性代替id。按名称获取所有元素,然后禁用-
function checkOption(obj) {
var input = document.getElementsByName("input");
for(var i=0; i < input.length; i++) {
input[i].disabled = !(obj.value == "B")
}
}
<p>Contact Us Form </P>
<select id="menu" onChange="checkOption(this)">
<option value="A">Select An Option</option>
<option value="B">Option 1</option>
<option value="A">Option 2</option>
</select>
<br>
<p> First Name </p>
<input type="text" name="input" disabled>
<p> Second Name </p>
<input type="text" name="input" disabled>
<p>Enquiry</p>
<textarea rows="4" cols"50" id="textarea" name="input" disabled>
Lorem ipsum dolor sit amet, an modo mucius eum,
sanctus concludaturque qui no. Stet esse intellegat no eam,
nonumes eligendi disputationi ad usu.
</textarea>
<br>
<input type="submit" value="Submit" name="input" disabled>
先删除重复的id
你可以这样做
function checkOption(obj) {
if(obj.value!="Option_1"){
$("#formId:input").prop("disabled", true);
}else{
$("#formId:input").prop("disabled", false);
}
}
相关文章:
- 如何在PHP中使用$_POST获取Select元素值
- X秒后刷新select元素
- 在select元素中显示highchart dashstyle(svg)
- 在IE9中使用jQuery.change定位select元素
- 使用Dalekjs测试工具,如何在Dropdown中选择Option(select元素)当没有“;值“;Option标记
- 如果选择了当前年份,则在Select元素中仅显示当前和未来月份
- 使用jquery验证函数不适用于select元素
- AngularJS:根据其他对象预先选择ng repeat中的select元素
- 减小select元素中的下拉宽度
- 我可以't从通过Ajax创建的select元素中设置值或获取值
- this.defaultValue 返回 select 元素的未定义
- 使用挖空.js如何刷新 Select 元素中的可观察数组
- 用于逐步增强的“select”元素的JavaScript中的事件处理程序
- 正在从开发人员工具中的select元素打印选项列表
- 丢失对jQuery存储的select元素的引用
- jQuery如何动态添加select元素和重置select
- 使用纯JavaScript获取事件的select元素值
- 在更改时,如果没有使用jquery更改,也可以删除对select元素的关注
- 为Select元素选择ONCHANGE
- 用Javascript将焦点设置在select元素上会将第一个项目滚动到视图之外