2011-10-08 5 views
7

다음 jQuery Ajax 호출을 사용하고 있습니다 ... 어쨌든 작동하지 않습니다.TypeError : a is null

오류 : TypeError: a is null 여기

내 코드입니다 :

var prefixUrl = "autocomplete?action=complete&id="; 
$('#complete-field').bind('keyup', function(){ 
var url = prefixUrl + escape($('#complete-field').val()); 
$.ajax({ 
    type: "GET", 
    getUrl:url, 
    dataType: "xml", 
    success: function(responseXML) { 
     var composers = responseXML.getElementsByTagName("composers")[0]; 
     if (composers.childNodes.length > 0) { 

      $('#complete-table').css("border", "1px solid green"); 
      $('#complete-table').css("margin", "128px 0 0 -82px"); 

      for (var loop = 0; loop < composers.childNodes.length; loop++) { 
       var composer = composers.childNodes[loop]; 
       var firstName = composer.getElementsByTagName("firstName")[0]; 
       var lastName = composer.getElementsByTagName("lastName")[0]; 
       var composerId = composer.getElementsByTagName("id")[0]; 

       appendComposer(firstName.childNodes[0].nodeValue, lastName.childNodes[0].nodeValue, composerId.childNodes[0].nodeValue); 
      } 
     } 
    }, 
    error:function (xhr, ajaxOptions, thrownError) { 
     alert('xhr.status: ' + xhr.status); 
     alert(thrownError); 
    } 
    }); 
}); 

어떤 생각하시기 바랍니다가?

많은 감사

+6

음의 문서를 참조해야 하는가? –

+1

여기에 어떤 오류도 보이지 않고 코드의 다른 곳에 있어야합니다 ... 일반적으로 firebig는 오류의 줄을 알려줍니다 ... 그래서 어디서 발생했는지 알 수 있습니다. – Reflective

+3

나는 눈이 멀었습니다. 또는 변수가 없습니다. 이 스 니펫에서'a'? –

답변

3
$.ajax({ 
    type: "GET", 
    getUrl:url, 
    ... 

$.ajax({ 
    type: "GET", 
    url: url, 
    ... 

가있는 라인 당신이 그 오류를 받고, http://api.jquery.com/jQuery.ajax/

+2

필요한 매개 변수를 지정하는 것을 잊어 버리면 jQuery처럼 무언가가 의미있는 오류 메시지를 나타낼 것이라고 생각할 수 있습니다 ... –

+2

@Kolink 나는 동의하지만, 반면에 jQuery는 개발을 위해 완화되지 않은 코드를 제공합니다 테스트. – Andbdrew