2012-05-21 2 views
2

를 정의되어 있지, 나는 아약스 자동 완성에 문제가있어, 내가 (파이어 폭스)에서 방화범이 오류가자동 완성 아약스 g.nodename이 여기 새로 왔어

Uncaught TypeError: Cannot call method 'toLowerCase' of undefined jquery-1.7.2.min.js:977
f.fn.extend.val jquery-1.7.2.min.js:977
$.autocomplete.source novo:77
a.widget._search jquery-ui-1.8.18.custom.min.js:127
a.widget.search jquery-ui-1.8.18.custom.min.js:127
(anonymous function)

사람은 나를 도와 드릴까요, 내가 jQuery를 1.7.2-분 완성 사용하고, 나는 http://www.jensbits.com/2011/08/24/using-jquery-autocomplete-when-remote-source-json-does-not-contain-label-or-value-fields/

내 JSON 소스를 반환 코드 위의이 튜토리얼을 따라 :

[{"id":"1","campo":"[1] Empresa Tal"},{"id":"2","campo":"[2] Outra Empresa Tal"},{"id":"3","campo":"[3] Mais Outra Empresa"}] 

내 자바 스크립트 함수 :

$('#accadempresa').autocomplete({ 
     source: function(request, response) { 
      $.ajax({ 
       url: '/ajax.php?action=available&orm=cadempresa&campo=razsoc&valor=' + $(this).val(), 
       dataType: "json", 
       data: {term: request.term}, 
       success: function(data) { 
        response($.map(data, function(item) { 
         return { 
          id: item.id, 
          campo: item.campo 
         }; 
        })); 
       } 
      }); 
     }, 
     minLength: 2, 
     select: function(event, ui) { 
      alert('ae'); 
      //$('#state_id').val(ui.item.id); 
      //$('#abbrev').val(ui.item.abbrev); 
     } 

    }); 
+0

ajax 호출에 "async : false"를 추가하십시오. –

+0

이 작동하지 않습니다. 내 페이지 참조 : http://pastebin.com/wj3gyA2n – douglasjam

답변

7

안녕하세요 선생님 난 당신이 $를 사용하고 있기 때문에이 오류가 (이) .val() 점점 생각; 해당 코드를 id $ (요소 ID) .val()로 바꿉니다.

$('#accadempresa').autocomplete({ 
     source: function(request, response) { 
      $.ajax({ 
       url: '/ajax.php?action=available&orm=cadempresa&campo=razsoc&valor=' + $(elementid).val(), 
       dataType: "json", 
       data: {term: request.term}, 
       success: function(data) { 
        response($.map(data, function(item) { 
         return { 
          id: item.id, 
          campo: item.campo 
         }; 
        })); 
       } 
      }); 
     }, 
     minLength: 2, 
     select: function(event, ui) { 
      alert('ae'); 
      //$('#state_id').val(ui.item.id); 
      //$('#abbrev').val(ui.item.abbrev); 
     } 

    }); 
+0

감사합니다. – douglasjam

관련 문제