Sử dụng jQuery mới nhất (1.9.0), tôi bối rối là tại sao mã này không hoạt động:jQuery Ajax Nhận lỗi dữ liệu Cú pháp, không được công nhận biểu:
$.testAjaxFilter = function() {
var base = this;
// get faq categories
var currentFaqCategories = $('#category-list ul li a');
// loop through each faq category link and bind a click event to each
if (typeof currentFaqCategories !== 'undefined') {
$.each(currentFaqCategories, function(index, category) {
$(category).click(function(e) {
$(e.target).getFaqList();
return false;
});
});
}
// GET faq list elements from category link
$.fn.getFaqList = function() {
$.get($(this[0]).attr('href'), function(data) {
base.addFaqSectionToPage($(data).find('section.faq-page #content-column'));
});
};
// add new faq section to current page
this.addFaqSectionToPage = function(faqSection) {
// remove old faq section
var currentFaqSection = $('section.faq-page #content-column');
currentFaqSection.empty();
currentFaqSection.append(faqSection);
};
};
$.testAjaxFilter();
Trong khi xem giao diện điều khiển, khi nhấp vào một trong của liên kết danh mục, GET truy xuất toàn bộ trang trong phản hồi của nó, nhưng sau đó nó được theo sau bởi lỗi cú pháp, biểu thức không được công nhận: (liệt kê tất cả HTML từ trang đã truy xuất). Vì vậy, có điều gì đó không ổn trong số $.fn.getFaqList
, có thể sử dụng số $(data)
?
Có điều gì hiển nhiên tôi đang làm sai không? Mọi sự trợ giúp sẽ rất được trân trọng. Tôi không hiểu lắm về công cụ AJAX.
Thực hiện .find ('a') – karthikr
Nếu bạn đang ở trên 1.8+ bạn có thể thử '$ ($. ParseHTML (dữ liệu)). Find' – Musa
Cảm ơn Musa! Điều đó đã làm nó! Tôi sẽ thêm điều này vào câu hỏi của tôi. – beefchimi