【问题标题】:Enable does not work jQuery启用不起作用 jQuery
【发布时间】:2015-05-30 20:16:55
【问题描述】:

我尝试根据其他文本框的输入来禁用/启用文本框。 当role 文本框的输入为_teacher_ 时,subject 文本框为enable。否则,disabled

问题是当输入为teacher时它没有启用它

function check(event) {
    if ($('#role').val().toLowerCase() == "teacher")
            $("#subject").removeAttr("disabled"); 
    else
        $("#subject").attr("disabled", "disabled"); 
}

view.tpl

<input type="text" class="input-block-level" id="role" onkeypress="check(event)" placeholder="Teacher/HR" name="role"/>
<br/>
<input type="text" class="input-block-level" id="subject" placeholder="Subject(only if Teacher) " name="subject"/>
<br/>

【问题讨论】:

  • 这里没有足够的信息来给出明确的答案。请显示更多您的代码,包括元素的 HTML 以及您如何将检查功能绑定到表单。
  • @Juhana 我刚刚添加了 html 部分
  • 改用onkeyup事件(或者更好的是,用jQuery绑定事件,而不是内联。)

标签: jquery disabled-input


【解决方案1】:

尝试$("#subject").prop("disabled", false); 启用并尝试$("#subject").prop("disabled", true); 禁用该元素

【讨论】:

  • 相当于添加和删除一个属性。
  • 同样的事情发生了:(它确实被禁用了,但即使“老师”中的输入仍然如此:(
  • @Juhana 不,不是。
  • @Juhana 是什么让它成为一个特殊案例? disabled 是一个属性,使用prop 比设置/删除属性更可靠。
  • @Vohuman 我不认为我们对“特定”一词使用相同的定义。在任何情况下,请随意展示适用于 .prop() 但不适用于 .attr() 的 OP 代码版本。
猜你喜欢
  • 1970-01-01
  • 2023-03-27
  • 2023-03-08
  • 2013-08-03
  • 1970-01-01
  • 2015-03-06
  • 2014-06-18
  • 2014-12-16
  • 1970-01-01
相关资源
最近更新 更多