2016-04-08 107 views
0

我從數據庫(州和城市)中的兩個兩個表格創建兩個下拉字段。城市表格與每個州相關聯。我使用php將這兩個表中的數據轉換爲Json。我使用Ajax來填充選擇下拉列表。現在,我想在用戶從狀態下拉菜單中選擇一個狀態時過濾城市下拉菜單。我使用下面的代碼,它工作正常,除了在每個填充的選項字段之後添加一個空選項字段。任何幫助?如何使用Ajax一次性填充兩個下拉列表

function State() { 
    $('#statedd1').empty(); 
    $('#statedd1').append("<option value='0'>- Select State -</option>"); 
    $('#citydd1').append("<option value='0'>- Select City -</option>"); 
    $.ajax({ 
     type:"GET", 
     url:"states.php", 
     contentType:"application/json; charset=utf-8", 
     dataType:"json", 
     success: function(data) { 
      $('#statedd1').empty(); 
      $('#statedd1').append("<option value='0'>- Select State -</option>"); 
      $.each(data,function (index, item) { 
       $('#statedd1').append('<option value="'+ item.State_ID +'">'+ item.State_Name +'<option>'); 
      }); 
     },complete: function() {} 
    }); 
} 

function City(State_ID) { 
    $('#citydd1').empty(); 
    $('#citydd1').append("<option>Loading...</option>"); 
    $.ajax({ 
     type:"GET", 
     url:"cities.php?Id="+State_ID, 
     contentType:"application/json; charset=utf-8", 
     dataType:"json", 
     success: function(data) { 
      $('#storedd1').empty(); 
      $('#storedd1').append("<option value='0'>- Select City -</option>"); 
      $.each(data,function (index, item) { 
       $('#citydd1').append('<option value="'+ item.CityID +'">'+ item.CityName +'<option>'); 
      }); 
     },complete: function() {} 
    }); 
} 

$(document).ready(function() { 
     State(); 
     $("#statedd1").change(function() { 
      var State_ID = $("#statedd1").val(); 
      City(State_ID); 
     }); 
    }); 

<p><select id="statedd1"></select></p> 
<br><br> 
<p><select id="citydd1" multiple></select></p> 

回答

0

我認爲你是缺少/在第二個選項標籤< /選項>在您的附加行

+0

哇哦!那是@Martin Julyan。非常感謝。只是一件小事,我一直在努力弄清楚我的代碼有什麼問題。哈哈哈 –