2012-03-13 71 views
0

我有以下代碼:它返回未捕獲的語法錯誤:。如果我刪除dataType我沒有得到任何錯誤,但我也沒有數據?未捕獲的語法錯誤:

function myfunc() { 
    var value = $("#firstselect").val(); 
    $.get("contactlist.php", 
      {SEARCH_PARAM: value }, 
      dataType: "json", 
      function(data) { 
       var options = '<option value="">Select one...</option>'; 
       for(var i = 0; i < data.length; i++) { 
        options += '<option value="' + data[i].id +'">'+data[i].name+'</option>'; 
       } 
       $("#secondselect").html(options); 
      } 
    ); 
} 
+1

這意味着您的服務器沒有返回JSON。 – SLaks 2012-03-13 20:20:20

+0

你試過'$ .getJSON()'而不是'$ .get()'嗎? – 2012-03-13 20:22:18

+0

你嘗試過添加contextType:'text/plain; charset = UTF-8'。 – Qpirate 2012-03-13 20:24:09

回答

6

您的成功,函數需要來數據類型之前,數據類型應該只是一個字符串,而不是一個命名的值:

function myfunc() { 
    var value = $("#firstselect").val(); 
    $.get("contactlist.php", 
    {SEARCH_PARAM: value }, 
    function(data) { 
     var options = '<option value="">Select one...</option>'; 
     for(var i = 0; i < data.length; i++) { 
     options += '<option value="' + data[i].id +'">'+data[i].name+'</option>'; 
     } 
     $("#secondselect").html(options); 
    }, 
    "json" 
); 

} 
+0

+1引用在這裏http://api.jquery.com/jQuery.get/ – 2012-03-13 20:25:17

+0

OP正試圖將'$ .ajax()'和'$ .get()'與他/她使用的方式混合鍵/值對作爲參數。確保在使用之前閱讀關於功能的文檔... – Jasper 2012-03-13 20:26:11

+0

+1你快Brian! – StilgarBF 2012-03-13 20:27:20

0

你有一個錯誤的順序的參數。 數據類型必須是最後

嘗試:

function myfunc() { 
var value = $("#firstselect").val(); 
$.get("contactlist.php", 
     {SEARCH_PARAM: value } 
     function(data) { 
      var options = '<option value="">Select one...</option>'; 
      for(var i = 0; i < data.length; i++) { 
       options += '<option value="' + data[i].id +'">'+data[i].name+'</option>'; 
      } 
      $("#secondselect").html(options); 
     }, 
     "json" 
); 
} 
相關問題