Tôi có một jQuery datepicker chức năng ràng buộc với "sinh nhật" yếu tố html đầu vào, được viết trong tiêu đề trang:jQuery datepicker sẽ không hoạt động trên một AJAX thêm html yếu tố
<script type="text/javascript">
$(function() {
$("#birthday").datepicker();
});
</script>
Tiếp theo, tôi có một số AJAX chức năng - nó thêm phần tử html đầu vào mới vào trang. yếu tố đó là:
<input type="text" id="birthday" value="" class="detail-textbox1" />
Nhấp vào mà sinh nhật yếu tố không bật lên bộ chọn ngày bên dưới trường văn bản. Tôi mong đợi điều này, vì phần tử được thêm sau khi trang được tải, do đó nó không liên quan đến hàm được cung cấp trong tiêu đề.
Tôi làm cách nào để nó hoạt động? Tôi đã thử di chuyển kịch bản từ tiêu đề đến cơ thể, nhưng không có gì có vẻ hiệu quả. Cảm ơn.
P.S. Nếu tôi tạo phần tử html đầu vào có id = "birthday" trong phần nội dung trang, everythig sẽ hoạt động như mong đợi. Có vẻ như chỉ có các phần tử được thêm vào thông qua AJAX mới có chức năng rối loạn chức năng.
Cảm ơn JK. Sử dụng .live() giải quyết vấn đề. Thay vì ví dụ của bạn, tôi đã sử dụng $ ('# birthday'). Live ('focus', function() {$ (this) .datepicker();}); – Boris
@Boris Hàm .datepicker() tạo bộ chọn, vì vậy bạn chỉ cần gọi nó một lần. Nhưng nó sẽ không thực sự làm tổn thương quá nhiều Tôi đoán để làm điều đó mọi lúc tập trung (nhưng nó là ít hiệu quả hơn nó có thể được). –
nếu tôi thay đổi 'tập trung' thành 'tải', nó không hoạt động chút nào. Ngoài ra, tôi đã nhận thấy rằng khi tôi tab trong datepicker và tab ra (mà không chọn bất kỳ giá trị), không có kịch bản AJAX/php của tôi làm việc. ?!?! Tôi đang làm gì sai? – Boris