Tôi đã có một yêu cầu ajax thực hiện mỗi lần người dùng nhấn một số nút (viết văn bản) trong một vùng văn bản nhất định. Điều này sẽ làm việc rất tốt (nó là một chức năng lọc tìm kiếm btw.), Nhưng nó sẽ không phải là một ý tưởng tốt để thực hiện các bộ lọc sau mỗi tổ hợp phím. Vì vậy, tôi đã suy nghĩ về việc làm một điều delayer. Vì vậy, yêu cầu ajax sẽ chỉ thực hiện khi ít nhất 1 giây đã trôi qua kể từ khi người dùng nhấn nút cuối cùng. Làm thế nào tôi có thể đạt được điều này?Đợi 1 giây trước khi thực hiện yêu cầu AJAX onkeyup
<textarea id="text" name="text" onkeyup="Search()"</textarea>
function Search()
{
$.ajax({...
...
}
Vì vậy, rõ ràng là nó sẽ chạy mọi lúc. Ví dụ: nếu tôi nhập "hello" vào vùng văn bản nhanh, nó sẽ chạy 5 lần và nó không sử dụng. Nó sẽ là đủ để chạy nó chỉ khi tôi ngừng viết trong hơn 1 giây.
Có thể bạn nên đặt 'hẹn giờ' với trả về' setTimeout' :) – Holt
@Holt cảm ơn bạn! Đánh máy quá nhanh, cần chậm trễ hơn;) –
Cảm ơn bạn, điều này thực sự đã giải quyết được vấn đề của tôi! :) Xin lỗi vì là người mới bắt đầu, nhưng tôi học nhanh. :) – egyeneskanyar