2013-07-26 28 views
7

Tôi nhận được lỗi này chỉ trong IE vào trang web MVC của tôi:MVC VS2012 jquery.validate.js lỗi trong IE: Không thể để có được tài sản 'gọi' tham chiếu undefined hoặc null (dòng 1234)

SCRIPT5007: Không thể nhận được thuộc tính 'gọi' tham chiếu không xác định hoặc không có giá trị jquery.validate.js, dòng 1234 ký tự 5

Tôi đã xem xét một chút câu trả lời và không thể tìm thấy giải pháp. Chrome hoạt động tốt. Khi tôi Google thông báo lỗi chính xác, tôi đã được dẫn đầu ở đây: script bundle not working, nhưng câu trả lời không giúp tôi.

Tôi đã thử cập nhật các plugin xác thực jQuery và jQuery của mình thông qua trình quản lý gói Visual Studio NuGet. Tôi đã nâng cấp jQuery lên phiên bản 2.0.3 và jQuery Validation 1.11.1. Tôi nghĩ rằng tôi đã có jQuery 1.9.x trước đây. Điều này không có hiệu lực.

Tôi tin rằng bó của tôi là tiêu chuẩn:

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
        "~/Scripts/jquery-{version}.js")); 

bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include(
        "~/Scripts/jquery-ui-{version}.js")); 

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
        "~/Scripts/jquery.unobtrusive*", 
        "~/Scripts/jquery.validate*")); 

và ở phần cuối đuôi của trang bố trí của tôi, đây là những Scripts.Render tôi gọi:

 @Scripts.Render("~/bundles/jquery") 
     @Scripts.Render("~/bundles/jqueryui") 
     @Scripts.Render("~/bundles/jqueryval") 
     @RenderSection("Scripts", false) 
    </body>  
</html> 

bất kỳ sự giúp đỡ được đánh giá rất cao.

+5

Tôi sẽ thêm di chuyển jquery để đảm bảo rằng nó không bị văng lên qua jquery 1.8.2 đã gây ra nó. tôi biết jquery 1.9.x đã có một số vấn đề với thư viện xác nhận – Slicksim

+0

cảm ơn bạn dường như làm việc - rất muốn cung cấp cho bạn một số tín dụng cho điều đó nếu bạn nhập là câu trả lời –

Trả lời

4

Tôi đã cài đặt Bootstrap MVC4 qua NuGet khi lỗi chính xác xảy ra với ứng dụng của tôi. Bản cài đặt Bootstrap MVC4 mới nhất sẽ loại bỏ jquery-1.8.2 * và cài đặt jquery-1.9.1 * làm phụ thuộc. jquery.validate dường như không chơi tốt với jquery-1.9.1. https://github.com/jzaefferer/jquery-validation tuyên bố rằng họ không giải quyết bất kỳ vấn đề nào liên quan đến Chế độ tương thích với IE (dễ hiểu). Sự cố là, tôi đang chạy IE10 - Chế độ tương thích, và tôi vẫn gặp lỗi. Tôi đã thêm tất cả các phiên bản mới nhất của tất cả các tệp jquery trong dự án của tôi, xóa các tệp cũ hơn khỏi dự án và thành công trong IE!

+0

Dự án của tôi đã có tập lệnh Xác thực jQuery, nhưng tôi đã sử dụng Nuget để "cài đặt" nó đã tải xuống bản sao hiện tại và thay thế nó bằng bản cũ. Điều này là tuyệt vời bởi vì bây giờ nếu có một bản cập nhật, tôi sẽ được cảnh báo và có thể cập nhật tự động. Dù sao, nâng cấp lên bản sửa lỗi mới nhất của tôi (tôi đang sử dụng jQuery 2.0.3) –