这是我的问题。在文本字段txt1中更改数据时,我们向json文件发送请求,该文件输出在该文本中输入的值的状态(Y表示)“是”,并且(N表示) )检查“否”,如果没有值 只检查“否”。下面是代码,但是如果我们输入“213”,则表示“A”,因此状态为“YES”,因此选中“YES”,“NO”为“DISABLED”。“214”表示“B”,因此状态表示“否”,检查“否”,“禁用”,“是”也“禁用”。只应检查“否”,而不是“禁用” 可能是我们在之前的“是”中已经“禁用”。
$.getJSON("test.php",{'val' : $("#txt1").attr('value'),'cde' :$("#txt2").attr('value')},
function(data){
if(data[0].status){
switch(data[0].status){
case 'A':
$('#rb_Statusyes').attr('checked',true);
$('#rb_Statusno').attr('disabled','disabled');
break;
case 'B':
$('#rb_Statusno').attr('checked',true);
$('#rb_Statusyes').attr('disabled','disabled');
break;
case '':
$('#rb_Statusno').attr('checked',true);
$('#rb_Statusyes').attr('disabled','disabled');
break;
}
}
答案 0 :(得分:1)
如果我理解正确,您的问题是您之前已设置该属性,现在需要将其删除。
$('#rb_Statusno').attr('checked',true);
$('#rb_Statusno').removeAttr('disabled'); // Also remove the previously added disabled
$('#rb_Statusyes').attr('disabled','disabled');
$('#rb_Statusyes').removeAttr('checked'); // Also remove the previously added checked
答案 1 :(得分:0)
代码看起来没问题,但试试这个
//disable options
$('#rb_Statusyes').attr('checked', true);
$('#rb_Statusno').attr('disabled', true);
//enable options
$('#rb_Statusno').removeAttr('disabled');