Tôi gặp lỗi này trên sự kiện .click() trong jQuery. Tôi thấy nó trong Firebug. Tôi sử dụng phiên bản mới nhất, 1.3.2 (phút) Nhấp chuột kích hoạt yêu cầu $ .ajax() cho Biểu mẫu trong trang web của tôi. Tôi hỏi google về điều này và tất cả những gì anh ta biết là "%" hoặc "[@]" là các biểu thức không được công nhận, không có gì về "#".ngoại lệ không bắt buộc: Lỗi cú pháp, biểu thức không được công nhận: #
đây là một chút của mã của tôi:
$("form#buyForm #submitForm").live("click", function(e) {
var errors = 0;
var inputLastName_value = $("form#buyForm input#userLastName").val();
if (inputLastName_value == "") {
errors = 1;
formErrorHandling("#userLastName");
return false;
}
return false;
});
Bằng cách này tôi rà soát tất cả các đầu vào của tôi cho các lỗi, và sau đó gọi formErrorHandling() ai làm một số show/hide, những thứ như thế, không có gì quan trọng.
Tôi đọc rằng nó có thể là từ bộ chọn của tôi, nhưng tất cả dường như chỉ là tốt.
Có ai khác có cùng vấn đề không?
Cảm ơn.
Có một lý do bạn đang làm tổ '# ids' trong bộ chọn của bạn? Id phần tử phải là duy nhất trên trang, do đó lồng chúng hoặc chỉ định chúng bằng 'form' hoặc' input' có vẻ hơi lạ. –
Ý tôi là, tại sao lại sử dụng 'form # buyForm # submitForm' khi bạn chỉ có thể nói' # submitForm' vv –
dcneiner, có, id nên là và duy nhất. Lý do tôi sử dụng tên thẻ trước khi chọn, ít nhất là từ những gì tôi đã đọc, là tốc độ. Vì vậy, jQuery sử dụng getElementByTagName và biết chính xác những gì để tìm kiếm, thay vì nhìn vào tất cả các id từ trang của tôi. – Adrian