2012-03-13 12 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

+0

'$ .get()'대신'$ .getJSON()'을 시도 했습니까? –

+0

contextType 추가 시도 : 'text/plain; charset = UTF-8 '을 요청합니다. – Qpirate

답변

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/ –

+0

OP는 자신이 사용하던 방식대로'$ .ajax()'와'$ .get()'을 섞으려고했습니다. 키/값 쌍을 인수로 사용합니다. 사용하기 전에 함수에 대한 설명서를 읽으십시오. – Jasper

+0

+1 빠른 브라이언입니다! – StilgarBF

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" 
); 
} 
관련 문제