Как отключить переключатель в Jquery

#jquery #jquery-selectors

#jquery #jquery-селекторы

Вопрос:

Вот моя проблема.При изменении данных в текстовом поле txt1 мы отправляем запрос в файл json, который выводит статус этого значения, введенного в текстовое поле, с этим статусом (Y означает) проверяется «Да» и (N означает) проверяется «Нет», и если значение не присутствует, то проверяется только «НЕТ». Вот код ниже, но, например, если мы введем значение «213», это означает «A», поэтому статус «ДА», поэтому «ДА» проверяется, а «НЕТ» «ОТКЛЮЧЕНО». «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;          
                            }
                      }
  

Комментарии:

1. хорошо, если вы немного доработаете этот вопрос, я, возможно, действительно смогу помочь 🙂

Ответ №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
  

Ответ №2:

Код выглядит нормально, но попробуйте это

 //disable  options
$('#rb_Statusyes').attr('checked', true);
$('#rb_Statusno').attr('disabled', true);

//enable  options
$('#rb_Statusno').removeAttr('disabled');