首页 文章

如何从下拉列表中选择值时禁用输入类型=“文本”[关闭]

提问于
浏览
-5

我有一个下拉列表),一个是输入类型=“文本” . 我想要的是如果我从下拉列表中选择值{2,3}而不是第一个值,那么输入类型将被禁用,如果我再次选择第一个值,那么它将被启用 .

2 回答

  • 0

    假设你有这个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> .

    由于're using jQuery (as you'已将 jquery 标记添加到问题中),示例代码可能如下所示:

    $('#dropdown').change(function() {
        if( $(this).val() == 1) {
            $('#textInput').prop( "disabled", false );
        } else {       
            $('#textInput').prop( "disabled", true );
        }
    });
    

    这是一个工作小提琴:https://jsfiddle.net/wx38rz5L/2268/

  • 0

    您可以挂钩到选择框的 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" />
    

相关问题