启用/禁用文本区域

时间:2016-12-09 04:09:42

标签: javascript jquery html

点击两个单选按钮后,我正在使用jQuery启用/禁用文本区域。这是我的代码:

HTML

<select id="mySelect" name="myselect" onclick="myFunction(this)">
<option value="Audi">Audi
<option value="BMW">BMW
<option value="Mercedes">Mercedes
<option value="Volvo">Volvo
</select>

<p id="demo"></p>

的jQuery

<form>
   <input type="radio" id="aa" name="candidates">1 <br>
   <input type="radio" id="bb" name="candidates">2<br>
</form>
<textarea rows="2" id="candidateTextArea" style="width: 100%;">adadsajsd</textarea>

http://jsfiddle.net/uu1kje5x/5/

在实践中,我看到的是文本区域被禁用,并且永远不会再次激活。任何想法为什么这不起作用?

4 个答案:

答案 0 :(得分:1)

应该是reinterpret_cast而不是false"false"

周围不需要引号
false

Here是小提琴

答案 1 :(得分:0)

而不是设置属性设置prop:

UserDAO

);

$("#aa").change(function() { 
                console.log("change in aa"); 
        $("#candidateTextArea").prop("disabled",true);

  }

答案 2 :(得分:0)

要重新启用已将属性设置为已禁用的HTML元素,您必须完全删除该属性。

您可以使用jQuery&#39; .removeAttr()执行此操作,而不是将其设置为false。

$("#bb").change(function() { 
   console.log("change in bb"); 
  $("#candidateTextArea").removeAttr("disabled"); // <------ used here
  }
);

答案 3 :(得分:0)

您应该使用disabled添加attr()属性,并使用removeAttr()

删除已停用的属性

$("#aa").change(function() {
   $("#candidateTextArea").attr("disabled", "disabled");
});

$("#bb").change(function() {
  $("#candidateTextArea").removeAttr("disabled");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <input type="radio" id="aa" name="candidates">1
  <br>
  <input type="radio" id="bb" name="candidates">2
  <br>
</form>
<textarea rows="2" id="candidateTextArea" style="width: 100%;">adadsajsd</textarea>