我有一个下拉列表),一个是input type="text"。我想要的是,如果我从下拉列表中选择值{2,3}而不是第一个值,那么输入类型将被禁用,如果我再次选择第一个值,那么它将被启用。
假设你有这样的HTML代码:
<select id='dropdown'>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<input type="text" id="textInput" />
则可以在<select>
上对change
事件进行操作,通过添加事件监听器使<input>
禁用或启用。
由于您正在使用jQuery(因为您已经将jquery
标记添加到问题中),因此示例代码可能看起来像这样:
$('#dropdown').change(function() {
if( $(this).val() == 1) {
$('#textInput').prop( "disabled", false );
} else {
$('#textInput').prop( "disabled", true );
}
});
这是一个工作小提琴:https://jsfiddle.net/wx38rz5L/2268/
可以钩入选择框的onchange
事件。如果您将第一项设置为某个已知值(如空字符串或"first"或其他),则可以检查当前值并根据该值禁用或启用文本框。
var sel = document.getElementById("sel"), text = document.getElementById("text");
sel.onchange = function(e) {
text.disabled = (sel.value !== "");
};
<select id="sel">
<option value="">1</option>
<option>2</option>
<option>3</option>
</select>
<input type="text" id="text" />