我想在选中第一个单选按钮时启用文本框&如果第二,那么我想在这里禁用文本框是我的代码不起作用请帮助..
<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);
}
});
答案 0 :(得分:4)
您可以通过根据所选广播的值是否为disabled
来设置Y
属性来实现此目的。试试这个:
$('input:radio[name="IsLive"]').change(function() {
$("#LiveDate").prop("disabled", this.value != 'Y');
});
请注意,我删除了:checked
条件,因为它对于单选按钮来说是多余的,因为要引发新的change
事件,必须检查该元素。
答案 1 :(得分:0)
试试这个:
$('input:radio[name="IsLive"]').change(function() {
var bool = $(this).val() !== 'Y';
//$("#LiveDate").show();
$("#LiveDate").prop("disabled", bool);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<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>
答案 2 :(得分:0)
更改您的jquery代码:
$("input#LiveDate").prop('disabled', true);
$('input:radio[name="IsLive"]').change(function() {
if ($(this).is(':checked') && $(this).val() == 'Y') {
// append goes here
$("input#LiveDate").prop('disabled', false);
} else {
$("input#LiveDate").prop('disabled', true);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<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>
答案 3 :(得分:0)
$('input:radio[name="IsLive"]').change(function() {
if ($(this).is(':checked') && $(this).val() != 'Y') {
document.getElementById("LiveDate").disabled = true;
}
});