Tôi có một nhóm trường kiểu "lặp lại" trên trang tùy chọn tùy chỉnh. Có một trình soạn thảo trực quan đang hoạt động ở trạng thái ẩn và khi người dùng nhấp vào "thêm mới", toàn bộ hàng được sao chép. Sau đó tôi cần khởi tạo trình soạn thảo trực quan trong hàng nhân bản. Mã của tôi:
$('.repeater-add-new').click(function(event) {
event.preventDefault();
var target = $(this).data('repeater');
$( '#' + target).find('.repeater-row:not(.clone) .repeater-content.in').collapse();
var newRow = $( '#' + target + ' .repeater-row.clone' ).clone().appendTo( '#' + target + ' .repeater-row-wrapper' ).removeClass('clone');
rebuildIndex(target);
// Initialize editors if needed
newRow.find('.wp-editor-wrap').each(function(index, el) {
var ed_id = $(this).find('textarea').attr('id');
tinymce.init(tinyMCEPreInit.mceInit[ed_id]);
tinymce.execCommand('mceAddEditor', false, ed_id);
quicktags({id : ed_id});
});
});
Ảnh chụp màn hình của giao diện:
Khi tải trang, tôi gặp lỗi bảng điều khiển:
Uncaught TypeError: Không thể đọc thuộc tính 'onpageload' không xác định
Và tất nhiên trình soạn thảo không hoạt động. Sau khi tôi lưu trang, nó hoạt động tốt, nhưng tôi cần nó hoạt động khi hàng cũng được thêm vào.