2015-03-27 13 views
5

Tôi nhận được thông báo lỗi này trong bảng điều khiển.c.curCSS không phải là lỗi chức năng từ jQuery

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

Chức năng này của tôi ai làm autocomplete:

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") 
       } 
      }); 

     }); 

} 

Tôi có jQuery phiên bản 1.8.3 và tôi không có quyền truy cập vào các tập tin. Đó là từ một máy chủ khác, tôi chỉ sử dụng một liên kết đến thư viện. Các chức năng hoạt động, nhưng không có css áp dụng cho các kết quả và tôi nhận được thông báo lỗi trong giao diện điều khiển. CÓ Tôi thấy các giải pháp mà tôi phải sửa đổi thư viện, nhưng tôi không có acccess để làm điều đó. Tôi nên làm gì để thực hiện công việc này.

+0

có thể trùng lặp của [Lỗi giao diện người dùng jQuery 1.8.13] (http://stackoverflow.com/questions/12048271/jquery-ui-1-8-13-sudden-error) – Terry

+0

@Terry Như tôi đã nói trong bài đăng. Tôi không có quyền truy cập vào thư viện. Giải pháp của bạn là sửa đổi thư viện. Tôi đang tìm một giải pháp khác, mà không sửa đổi thư viện. Chú ý hơn trước khi đánh dấu nó là trùng lặp –

+0

@ Jozsef, nếu bạn không thể sửa đổi thư viện, tại sao bạn không chỉ đơn giản là bí danh '$ .curCSS()' thành '$ .css()' trong mô-đun của riêng bạn? –

Trả lời

27

Giải pháp thay thế, bạn có thể chỉ cần xác định lại $.curCSS() trong mô-đun của mình.

Sau bao gồm jQuery, viết một cái gì đó như:

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

jQuery UI sẽ kết thúc gọi hàm mà sau đó, và widget autocomplete sẽ làm việc như dự định.

Cập nhật: Tôi vừa nhận ra câu trả lời của mình là một bản sao giống như câu trả lời của câu trả lời của Johann Chaves Saborío there. Mặc dù vậy, tôi sẽ để nó ở đây vì hàm của tôi truyền bá giá trị trả về là $.css() cho người gọi, nhưng không.

+0

hoàn hảo ........................ – Wolfack

+0

Hoàn hảo .... cảm ơn – prabhjot

Các vấn đề liên quan