2009-06-22 44 views
5

Tôi đang cố gắng sử dụng thư viện jquery trong ASP.NET trong thư mục con được gọi là "mẫu" với trang cái nằm trong thư mục gốc. Hiện nay các tham chiếu đến các tập lệnh jquery được đặt trong thẻ đầu của trang chính. Nếu trang tôi đang tạo cũng nằm trong thư mục gốc, mọi thứ đều hoạt động tốt. Nếu tôi di chuyển trang vào thư mục con "mẫu", jquery sẽ bị ngắt.Sử dụng JQuery trong một thư mục con Khi MasterPage nằm trong thư mục gốc

tôi có thể sửa chữa vấn đề bằng cách sử dụng một cái gì đó như sau trong thẻ đầu:

<script src="<%=ResolveUrl("~/js/jquery.js")%>" type="text/javascript"></script>

... nhưng sau đó tôi đã làm mất khả năng sử dụng jquery IntelliSense, vì tôi là kết nối không còn trực tiếp vào tệp trong thời gian thiết kế.

Vì vậy, quesiton của tôi là: Làm thế nào tôi có thể sử dụng thư viện jquery trên một trang .aspx mà không mất kết nối với intelliSense khi trang của tôi nằm trong thư mục con và trang chính nằm trong thư mục gốc?

Trả lời

10

chỉ cần sử dụng này:

<script src="/js/jquery.js" type="text/javascript"></script> 

đặt /trướcjs làm các trick. Tôi luôn giữ các tệp css và javascript trong các thư mục riêng biệt và sử dụng tinh chỉnh này để đưa chúng vào đúng.

cho IntelliSense bạn có thể thử mẹo này:

<%if(true){%> 
    <script src="/js/jquery.js" type="text/javascript"></script> 
<%}%> 

Tôi không thể nhớ lại nguồn gốc của thủ thuật này.

+0

tôi làm như vậy, JavaScript và một thư mục Css trực tiếp của gốc và sau đó sử dụng một máy chủ tương đối URI để trỏ đến CSS của tôi/Các tệp JS. – Colin

+0

Tôi đã xác minh rằng/trước js thực sự cho phép mã chạy trong cả hai thư mục (vì vậy nó là một giải pháp tốt hơn so với ResolveUrl), nhưng nó vẫn sẽ không cho phép tôi nhìn thấy intellisense. Thủ thuật intellisense bạn liệt kê không hoạt động. – shizbiz

+0

Tôi lấy lại. Khi tôi thêm , tiếp theo là <%if(true){%> <%}%> Sau đó, nó hoạt động ở cả thư mục gốc và thư mục con, và nội dung hoạt động ở cả hai vị trí. Đủ tốt cho bây giờ. Cảm ơn bạn. – shizbiz

1

Bạn có thể sử dụng một người quản lý kịch bản để bao gồm các tập tin JS:

<asp:ScriptManager runat="server"> 
    <Scripts> 
     <asp:ScriptReference Path="~/js/jquery.js" /> 
    </Scripts> 
</asp:ScriptManager> 
+0

Điều này làm việc cho cả hai thư mục, nhưng không kết nối tôi với intellisense . – shizbiz

+0

lừa rất hữu ích, tôi thấy nó ở nơi khác, nhưng không thể tìm thấy nó. +1 –

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