0

我正在一个网站上使用 .load() 动态加载元素

其中一些元素有一个 edit_area 类,用于 jeditable ( http://www.appelsiini.net/projects/jeditable )

加载我的.html

<div class="edit_area" id="news">
    Content to be loaded
</div>

jQuery

$('#loadArea').load('loadMe.html');
$('.edit_area').editable('save.php', { 
    type      : 'textarea',
    cancel    : 'Cancel',
    submit    : 'OK',
    indicator : '<img src="loaderimage.gif">',
    tooltip   : 'Click to edit...'
});

由于这些元素是动态加载的, .ediable() 方法没有绑定到它们,我该如何解决这个问题?

4

4 回答 4

0
$("#loadArea").load('loadMe.html', function () {
    $('.edit_area').editable('save.php', {
        //etc.

如果您.editiable在from的回调.load中执行此操作,则必须先加载元素。

于 2013-02-16T03:39:12.337 回答
0
$('#loadArea').load('loadMe.html', function()
{
    $('.edit_area').editable('save.php', { 
      type      : 'textarea',
      cancel    : 'Cancel',
      submit    : 'OK',
      indicator : '<img src="loaderimage.gif">',
      tooltip   : 'Click to edit...'
    });
});
于 2013-02-16T03:40:11.323 回答
0

在加载事件的回调中,您可以使用“查找”方法来查找您想要应用“可编辑”的必要子元素。

于 2013-02-16T03:40:31.360 回答
0

由于您的元素是动态加载的,因此在调用您的代码时它们不一定存在。

看看 .delegate

http://api.jquery.com/delegate/

于 2013-02-16T03:43:23.727 回答