我想在选中第一个单选按钮时启用文本框,如果是第二个,那么我想禁用文本框,这是我的代码不起作用,请帮助..
<label class="radio-inline">
<input type="radio" value="Y" name="IsLive" class="grey">
YES
</label>
<label class="radio-inline">
<input type="radio" value="N" name="IsLive" class="grey">
NO
</label>
<label class="col-sm-2 control-label">
Live Date
</label>
<div class="col-sm-3">
<input type="text" id="LiveDate" name="LiveDate" class="form-control date-picker">
</div>
$('input:radio[name="IsLive"]').change(function () {
if ($(this).is(':checked') && $(this).val() == 'Y') {
// append goes here
$("#LiveDate").show();
} else {
$("#LiveDate").prop("disabled", true);
}
});
最佳答案
您可以通过仅根据所选 radio 的值是否为 disabled
设置 Y
属性来实现此目的。试试这个:
$('input:radio[name="IsLive"]').change(function() {
$("#LiveDate").prop("disabled", this.value != 'Y');
});
Working example
请注意,我删除了
:checked
条件,因为它对于单选按钮来说是多余的,为了引发新的 change
事件,必须检查元素。