使用jQuery进行相关选择-第一次更改时如何清除第二个选择?

时间:2019-05-01 16:37:02

标签: jquery

我有2个相关选择-州和学校名称。在我的HTML中,如果我第二次这样做,请选择:

<select name="school" id="school">
 <option value=''></option>
</select>

状态更改时,用户仍然必须单击选择以查看学校(即,它不会填充第一个元素)。

如果我删除选项标签:

<select name="school" id="school">

</select>

我得到了第一所自动出现的学校,但是当我更改状态时,第一所学校仍然停滞不前。

我在ajax之前的onChange中尝试过此操作:

$('#schoolSelect').empty();

选择建立在这里:

function(results,status,xhr){ 
   var $schoolSelect= $('#school');
   $schoolSelect.find('option:not(:first)').remove();
   if (results.length){ 
    $.each (results, function(i){ 
       $schoolSelect.append('<option value="' + results[i].CO_COID + '">' + results[i].CO_NAME + '</option>'); 
    }); 
   } 

理想情况下,列表将开始为空,然后第一个值将随着第一个选择的更改而更改。如果该状态下没有学校,它将恢复为空白。

1 个答案:

答案 0 :(得分:0)

由于上述提示,我通过执行以下操作解决了该问题:

<select name="school" id="school">

</select>

然后在jquery中添加一行:

function(results,status,xhr){ 
  var $schoolSelect= $('#school');
    $schoolSelect.find('option:not(:first)').remove();
    if (results.length){ 
      $('#school').empty(); //clears the 2nd drop down
      $.each (results, function(i){ 
      $schoolSelect.append('<option value="' + results[i].CO_COID + '">' + 
      results[i].CO_NAME + '</option>'); 
    }); 

}

相关问题