2008-10-14 118 views
7

Cố gắng bao gồm ThickBox (từ http://jquery.com/demo/thickbox/) trong một ứng dụng ASP.NET.

Visual Studio là không khi tôi cố gắng để chạy các ứng dụng với các lỗi: js \ thickbox \ jquery-1.2.6.min.js (11): lỗi CS1056: nhân vật không mong muốn '$'

Sử dụng Visual Studio 2008 và jquery 1.2.6

Trả lời

4

Có thể là do xung đột giữa jQuery $ và được xác định bởi thư viện tập lệnh asp.net.

Bạn có thể gọi jQuery.noConflict() sau đó sử dụng jQuery thay vì $. Ví dụ thay vì $ ("# test"), bạn sẽ gọi jQuery ("# ​​test").

Xem http://docs.jquery.com/Core/jQuery.noConflict để biết thêm thông tin.

+1

Không bao giờ biết điều đó. Cảm ơn câu trả lời, tôi đã sửa nó bằng cách xóa thuộc tính runat = "server" của liên kết. Được hy vọng sẽ sử dụng để giải quyết con đường từ trang chủ ... –

16

CS1056 rõ ràng là lỗi trình biên dịch C#. Loại điều này xảy ra khi bạn đặt runat = "server" trong một tập lệnh của khách hàng bao gồm thẻ (Visual Studio cố gắng biên dịch tệp .js của bạn như thể nó là C#). Chỉ cần xóa thuộc tính runat = "server" và thử lại.

+0

Tôi đã có một số lỗi trình biên dịch khác, mà đã thực sự đến từ các tập tin js chính nó. Lời khuyên của bạn đã giúp tôi :) –

+0

+1 Câu trả lời hay, tôi đã chiến đấu với lỗi này trong 3 giờ qua. Nhưng không bao giờ ngờ rằng đây có thể là lý do –

0

khi chúng tôi đặt runat = "server" trong thẻ tập lệnh, lỗi này xảy ra.

cho ví dụ:

script type="text/javascript" id="kk" runat="server" src="js/vendor/custom.modernizr.js" 

vì vậy chỉ cần loại bỏ các runat = server thì lỗi này sẽ không đến.

+0

Vui lòng định dạng câu trả lời của bạn đúng cách – Roopendra

0

Điều này xảy ra với tôi khi tôi đang viết mã jQuery trong sự kiện onClick kiểm soát máy chủ asp của tôi.

onClientClick chắc chắn là một lựa chọn tốt hơn cho mục đích này;)

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