2017-02-12 50 views
0

我正在使用jQuery (1.12.4)Select2 (4.0.3)從數據庫中選擇多個值,但出現跟隨錯誤。jQuery Select2 TypeError:b未定義

TypeError: b is undefined

JS代碼

$('#country').select2(
    { 
     placeholder: '--- Select ---', 
     multiple: true, 
     ajax: 
     { 
      url: '<?=site_url()?>/countries', 
      dataType: 'json', 
      type: 'POST', 
      delay: 1000, 
      processResults: function (data) 
      { 
       console.log(data); 
       var myResults = []; 
       $.each(data, function (index, item) 
       { 
        myResults.push(
        { 
         'id': item.id, 
         'text': item.text 
        }); 
       }); 
       return 
       { 
        results: myResults 
       }; 
      }, 
      cache: true 
     } 
    }); 

JSON響應

[{"id":"US","text":"United States"},{"id":"RE","text":"Reunion"},{"id":"TZ","text":"Tanzania, United Republic of"},{"id":"TN","text":"Tunisia"},{"id":"AE","text":"United Arab Emirates"},{"id":"GB","text":"United Kingdom"},{"id":"UM","text":"United States minor outlying islands"}] 

HTML是相當簡單的

<select id="country"></select> 

PHP代碼

$this->db->like('name', $this->input->post("q")); 
      $query = $this->db->select('code AS id, name as text') 
        ->limit(20) 
        ->get("countries"); 
      $records = $query->result(); 
echo json_encode($records); 
+0

如果你調試,所以你可以檢查其中的錯誤是什麼時候包含選擇2的unminified版本。它會幫助你。這往往會給出更多的提示,指出發生了什麼問題。 – apokryfos

+0

@apokryfos感謝您的建議。是的,它有幫助,現在我得到了這個錯誤'TypeError:data is undefined' – Hassaan

+0

@apokryfos'console.log(data);'也沒有打印任何東西。但是我可以在FireBug中看到響應。這似乎很奇怪:| – Hassaan

回答

0

延遲可能不會選擇2個JS設置 讓主要的jQuery的肯定select2.js底部

+0

感謝您的響應。延遲正在工作,'select2'已經在頁面底部 – Hassaan