2012-04-12 7 views
8

Tôi có một vấn đề lạ với Yii & Jquery:Yii không phải là tự động bao gồm jquery

Khi tôi mở một trang trong đó sử dụng ajax/jquery trên localhost Yii không tự động thêm tài sản bao gồm các cuộc gọi đến trang:

<link rel="stylesheet" type="text/css" href="/PATH/assets/f72b359d/style.css" /> 
<script type="text/javascript" src="/PATH/assets/2e442e1a/jquery.js"></script> 
<script type="text/javascript" src="/PATH/assets/2e442e1a/jquery.cookie.js"></script> 

Tuy nhiên khi tôi chạy cùng một mã trên máy chủ Yii không làm việc đó không có sẵn Jquery.

Tôi đánh giá cao nếu ai đó có thể hướng đến cách giải quyết.

+0

Tôi chưa bao giờ sử dụng Yii nhưng đây là phỏng đoán của tôi, đã thử sử dụng đường dẫn tuyệt đối thay vì tương đối? – Gerep

+0

Ý bạn là "không làm điều đó"? Có phải các thẻ không nằm trong ' 'không? – Jon

+0

Hoặc thử sử dụng Google CDN (Mạng phân phối nội dung) để phục vụ jQuery: http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js –

Trả lời

19

Dường như bạn không đăng ký jQuery theo đúng cách. Bạn phải thêm dòng sau đây trong /protected/views/layout/main.php trước </head> tag:

<?php Yii::app()->clientScript->registerCoreScript('jquery'); ?> 

Nó sẽ được tải jQuery tự động. Hãy nhớ rằng, nếu cờ YII_DEBUG ở trên, nó sẽ tải phiên bản không được rút gọn, khi bị hủy kích hoạt (khi sản xuất), nó sẽ tải phiên bản được rút gọn. Hy vọng điều này sẽ khắc phục được sự cố của bạn.

+1

Thực ra vị trí của dòng đó không quan trọng. Bạn có thể đặt nó trong một bộ điều khiển, trong một cái nhìn, vv Nhưng tôi không nghĩ rằng đó là vấn đề ở đây – acorncom

+1

Đó là giải pháp. Tôi đã không đăng ký một cách rõ ràng jQuery vì một số lý do nó đã làm việc tốt vì vậy tôi thậm chí không biết tôi nên làm điều đó. Nó đã xảy ra với tôi rằng nó đã được làm việc vì Yii Debug Thanh công cụ đã được bao gồm jQuery cho tôi và thanh công cụ đã được tắt trên máy chủ. –

1

Nếu tất cả đang làm việc trên máy tính cục bộ của bạn nó có thể là một vấn đề cho phép

Bạn đã kiểm tra rằng/tài sản là có thể ghi trên máy chủ của bạn?

Yii xuất bản nội dung cần thiết khi chạy trong thư mục này

+0

Đó là điều đầu tiên tôi đã kiểm tra và tất cả các thư mục đều có thể ghi được. –