当文本框中的金额超过时,复选框将禁用

时间:2016-07-08 08:52:33

标签: jquery

我有这个代码并正常工作但是当我清除文本字段时,复选框仍然检查我该怎么办?

   <form name="form1">
    <div class="controlset-pad">
        <input type="checkbox" name="others" onclick="enable_text(this.checked)" class="medium" disabled='disabled'/>
    </div>
    <input type="checkbox" name="others" onclick="enable_text(this.checked)" class="medium" disabled='disabled'/>
    </div>


        $('input[name=other_name]').keyup(function(){
            if (this.value.length > 0) {
               $('input[name="others"]').prop('disabled', false)
            } else {
               $('input[name="others"]').prop('disabled', true)      
            }
        })

http://jsfiddle.net/H8VPY/47/

2 个答案:

答案 0 :(得分:1)

按如下方式更改脚本。它只是在禁用控件之前取消选中。

$('input[name=other_name]').keyup(function(){
    if (this.value.length > 0) {
       $('input[name="others"]').prop('disabled', false)
    } else {
       $('input[name="others"]').attr('checked', false);
       $('input[name="others"]').prop('disabled', true)      
    }
})

答案 1 :(得分:0)

添加更改事件以及鼠标基础编辑,例如右键单击&gt;剪切等

注意:在禁用复选框之前取消选中。

123.456.111.222, 4.56.78.23, 143.222.222.1
$('input[name=other_name]').bind('keyup change', function() {
  if (this.value.length > 0) {
    $('input[name="others"]').prop('disabled', false)
  } else {
    $('input[name="others"]').attr('checked', false);
    $('input[name="others"]').prop('disabled', true)
  }
})