我查看了论坛,但无法找到解决我的具体问题的方法。我正在从模式弹出窗口创建一个元素。我可以让它显示在页面上,但它不可点击。
我在两个单独的文件中运行 jquery 代码,以便能够为应用程序做我需要的事情。
发生的事情是我有一个“编辑”图标,该图标在加载时加载到每个元素上。这很好用,当您单击它时,它会创建模态框并加载“第 2 页”。里面的所有功能都可以正常工作。当用户单击“更新”时,该框关闭并从“第 1 页”触发“append_elements”功能并加载新图标。但是,刚刚添加的这个编辑图标没有点击。
我曾尝试在各个地方使用 on() ,但没有任何运气让它工作。
谢谢埃里克
第 1 页:
$(document).ready(function(){
append_elements();
$('.cms_edit').on('click', function(){
var maskHeight = $(document).height();
var maskWidth = $(window).width();
$('#mask_temp').css({'width':maskWidth,'height':maskHeight});
$('#mask_temp').fadeIn(1000);
var winH = $(window).height();
var winW = $(window).width();
var content_object = { 'content' : $(this).parent().html(), 'item_id' : $(this).parent().data("item") }
$('#modal_temp').load('/content-edit.php', content_object);
$('#modal_temp').css('top', winH/2-$("#modal_temp").height()/2);
$('#modal_temp').css('left', winW/2-$("#modal_temp").width()/2);
$('#modal_temp').fadeIn(500);
});
});
function append_elements()
{
$('.cms_edit').appendTo('.editable').show();
}
第2页:
$('#update').click(function(){
var value = CKEDITOR.instances['page_text'].getData();
var item = $('#prev_id').val();
var elem = '<div class="cms_edit"><em class="icon-edit"></em></div>';
$('#item_' + item , parent.document).html(value);
$('#modal_temp', parent.document).fadeOut(500);
$('#mask_temp', parent.document).fadeOut(500);
parent.append_elements();
});