jQuery使用动态内容就地编辑

jQuery使用动态内容就地编辑,jquery,Jquery,在我的网站上,我以这种方式向DOM添加元素 $('#header').load('header.html #template'); 因此,我将外部html文件的内容加载到DOM中。然后我打电话 $('.edit').editInPlace({ callback: function(){ alert("test"); } }); 加载的内容包含一个带有编辑css的h2类 但根本没有反应。我尝试了许多就地编辑插件。尽管如此,我还是有同样的问题。你知道为什么吗?如何

在我的网站上,我以这种方式向DOM添加元素

$('#header').load('header.html #template');
因此,我将外部html文件的内容加载到DOM中。然后我打电话

$('.edit').editInPlace({
    callback: function(){
        alert("test");
    }
});
加载的内容包含一个带有编辑css的
h2


但根本没有反应。我尝试了许多就地编辑插件。尽管如此,我还是有同样的问题。你知道为什么吗?如何解决此问题?

由于
jquery.load()
方法是异步的,因此尽管在运行load方法后调用了
editInPlace
,但内容仍然不存在。您应该使用回调:

$('#header').load('header.html #template',function(){
    $('.edit').editInPlace({
        callback: function(){
        alert("test");
       }
    });
});

由于
jquery.load()
方法是异步的,因此尽管在运行load方法后调用了
editInPlace
,但内容仍然不在那里。您应该使用回调:

$('#header').load('header.html #template',function(){
    $('.edit').editInPlace({
        callback: function(){
        alert("test");
       }
    });
});

您是否导入了
jquery.editinplace.js
?使用
console.log('test')并监视浏览器控制台状态。此警报可能会破坏插件。如果你能设置一个测试页面,这将非常有帮助。当然这很重要。console.log不记录任何内容您是否导入了
jquery.editinplace.js
console.log('test')并监视浏览器控制台状态。此警报可能会破坏插件。如果你能设置一个测试页面,这将非常有帮助。当然这很重要。console.log不记录任何内容