2014-03-13 199 views
1

我有兩個下拉值。州和城市。另外我在我的數據庫中有兩個表格,分別是城市和州。動態下拉菜單添加

事情是與JQuery的幫助,我得到相應的城市,我選擇的國家。但事情是不能將這些相應的城市名稱追加到第二個下拉列表中。由於有超過1000個城市名稱,我可以附加它$()。append()函數,因爲它使我的瀏覽器掛起。

這是我的jQuery

$("#state_name").change(function() { 
     var state = $('#state_name :selected').val(); 
     console.log(state); 
     $.ajax({ 
       url: '/company_profile/update_city_select', 
       type: 'GET', 
       data: { 
        id: state 
       }, 
       success: function(response) { 
        // $("#city_name select").empty(); 
        var no_of_cities = response.cities.length; 
        console.log(no_of_cities); 
        var collection = response.cities; 
        //$('#city_name select').attr('<% :collection%>','<%' +collection+'%>'); 
        } 
      }); 
    return false; 
}); 

response.cities [I]。名稱給第i個城市的名字。

+2

如果數據裝載大,你應該使用jQuery的自動完成或選擇框包括自動完成的最佳方法。希望這可以幫助你:) –

+0

autocomplete做了一些工作。但即時通訊仍在尋找一種方法來使這個下拉列表成爲可能而不會導致任何瀏覽器掛起 –

回答

2

您可以在同一時間10個城市名稱來加載,並與滾動,你可以嵌入加載更多像Facebook,與此負載越多,你可以查詢使用偏移和限制再弄10條記錄,

和在使用一段時間追加10元是通過它可以實現你的記錄

 $("#load_more_btn").live('click', function(){ 
      var offset = $(this).data("offset"); 
      $.get('/controller_name', {offset : offset});          
     });