Tôi sử dụng plugin iCheck tuyệt vời để tạo kiểu cho các hộp kiểm của tôi trong biểu mẫu của tôi.Áp dụng iCheck (plugin jQuery) để tạo các Hộp kiểm được tạo động
Với plugin, tôi có thể chỉ cần gọi $('input').iCheck()
để áp dụng giao diện và chức năng mong muốn.
Tuy nhiên, tôi bị kẹt khi gọi hàm .iCheck()
trên hộp kiểm được tạo động.
Trong cuộc gọi ajax, tôi tạo các hộp kiểm của mình như sau trong hàm thành công; Đây là một khối $.each
nhưng vì mục đích đơn giản, tôi chỉ bao gồm mã trong câu lệnh.
var chk = $('<div><input id="' + n.ID + '" type="checkbox" name="lblChk"><label for="' + n.ID + '">' + n.Title + '</label></div>');
el.append(chk);
đâu el
là một div với id của container
đó đã tồn tại trong cây DOM và n
là đối tượng của tôi trở lại như JSON
Sau khi xây dựng các hộp kiểm và tôi gọi $('#container input').iCheck();
rõ ràng tôi nhận được có gì đặc biệt nhưng hộp kiểm chuẩn. Tôi đoán đó là vì các hộp kiểm được tạo động và sau khi gọi số .iCheck()
. Nhưng ngay cả sau khi tôi tạo hộp kiểm và gọi số .iCheck()
kết quả cũng giống nhau.
Có ai có thể hướng dẫn tôi về điều này không?
Xem câu trả lời dưới và bình luận ở đây : http://stackoverflow.com/questions/6068955/jquery-function-after-append. Hy vọng rằng điều này sẽ giúp. – Yatrix
@Yatrix cảm ơn bạn đã trả lời nhưng câu trả lời nào bạn đang đề cập đến? Có phải là một trong những tùy chọn setTimeout() ?? –
Womi ở dưới cùng của trang – Yatrix