2015-03-27 5 views
5

Ich bekomme diese Fehlermeldung in der Konsole.c.curCSS ist kein Funktionsfehler von jQuery

c.curCSS is not a function 
...,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m... 

Das ist meine Funktion, die die Autovervollständigung tut:

function autocomplete_name (name_val, id_val,action, button) { 

     $(document).ready(function() { 
      $(name_val).autocomplete({ 
       source: function(request, response) { 
        $.ajax({ 
         url: action, 
         dataType: "json", 
         data: { 
          term: request.term 

         }, 
         success: function(data) { 
          response($.map(data, function(item) { 
           return { 
            label: item.name, 
            value: item.name, 
            id: item.id 
           } 
          })); 
         } 
        }); 
       }, 
       minLength: 2, 
       select: function(event, ui) { 
        $(id_val).val(ui.item.id); 
        $(name_val).val(ui.item.value); 
        $(button).trigger("click") 
       } 
      }); 

     }); 

} 

Ich habe jQuery 1.8.3 Version, und ich habe keinen Zugriff auf die Datei. Es ist von einem anderen Server, ich benutze einfach einen Link zur Bibliothek. Die Funktion funktioniert, aber es gibt kein CSS für die Ergebnisse und ich bekomme diese Fehlermeldung in der Konsole. JA Ich habe Lösungen gesehen, dass ich die Bibliothek modifizieren muss, aber ich habe keinen Zugriff darauf. Was soll ich tun, damit dies funktioniert?

+0

möglich Duplikat von [jQuery UI 1.8.13 plötzlichen Fehler] (http://StackOverflow.com/Questions/12048271/Jquery-Ui-1-8-13-Sudden-Fehler) – Terry

+0

@Terry Wie ich schon sagte in der Post. Ich habe keinen Zugriff auf die Bibliothek. Ihre Lösung ist dabei, die Bibliothek zu ändern. Ich suche nach einer anderen Lösung, die die Bibliothek nicht verändert. Achten Sie bitte mehr darauf, bevor Sie es als dupliziert markieren –

+0

@Jozsef, wenn Sie die Bibliothek nicht ändern können, warum alias '$ .curCSS()' zu '$ .css()' in Ihrem eigenen Modul? –

Antwort

27

Als Workaround können Sie $.curCSS() in Ihrem Modul einfach neu definieren.

Nach wie jQuery, schreiben Sie so etwas wie:

jQuery.curCSS = function(element, prop, val) { 
    return jQuery(element).css(prop, val); 
}; 

jQuery UI wird danach die Funktion Aufruf am Ende, und der Autocomplete-Widget wird wie vorgesehen.

Update: Ich habe gerade festgestellt, meine Antwort ist ein Quasi-Duplikat von Johann Chaves Saborío Antwort there. Ich werde es hier aber lassen, weil meine Funktion den Rückgabewert von $.css() an den Aufrufer weitergibt, aber seinen nicht.

+0

perfekt ........................ – Wolfack

+0

Perfekt .... danke – prabhjot

Verwandte Themen