我有2个输入文本字段,当用户尝试在A输入文本字段中输入任何值时,B输入字段需要禁用不允许B字段中的任何条目。同样,如果用户尝试在B输入字段中输入任何输入,则输入字段需要禁用。 谁能帮助我如何在Jquery中编写代码
答案 0 :(得分:3)
输入字段名称为A
和B
。
$('input[name="A"]').on('change', function(){
if($(this).val() !== ''){
$('input[name="B"]').attr('disabled', 'disabled');
}else{
$('input[name="B"]').removeAttr('disabled');
}
});
$('input[name="B"]').on('change', function(){
if($(this).val() !== ''){
$('input[name="A"]').attr('disabled', 'disabled');
}else{
$('input[name="A"]').removeAttr('disabled');
}
});
答案 1 :(得分:3)
两个答案都是正确的,只是决定让代码简短:
$('input.inputA').keyup(function () {
$('input.inputB').prop('disabled', this.value.length === 0 ? false : true);
});
$('input.inputB').keyup(function () {
$('input.inputA').prop('disabled', this.value.length === 0 ? false : true);
});
答案 2 :(得分:2)
假设
<input type="text" class="inputA" />
<input type="text" class="inputB" />
和JS:
$(function(){
$("input").on("keyup", function(){
if($(this).hasClass("inputA") && $(".inputA").val()){
$("input.inputB").prop("disabled", true);
$("input.inputA").prop("disabled", false);
} else if($(this).hasClass("inputB") && $(".inputB").val()){
$("input.inputA").prop("disabled", true);
$("input.inputB").prop("disabled", false);
} else {
$(".inputA, .inputB").prop("disabled", false);
}
});
});
答案 3 :(得分:1)
如果你有下一个HTML:
<input type="text" name="test1" id="test1" value=""/>
<input type="text" name="test2" id="test2" value=""/>
我的解决方案是:
<script>
$(function(){
$('#test1, #test2').keyup(function(){
var $test1 = $('#test1');
var $test2 = $('#test2');
$test1.prop('disabled', $test2.val() && ! $test1.val());
$test2.prop('disabled', $test1.val() && ! $test2.val());
});
});
</script>
这是example