我有动态创建的div,我想在它加载时添加一些元素。jQuery .load()和.live()没有帮助我。
.load()
.live()
$('div#mydiv').load(function(){ $(this).html('loaded!'); });
zynd9foi1#
您应该在就绪部分中为单击创建一个事件:
$('input').live( 'click', function(){ alert("!"); });
9q78igpj2#
如果没有更多的上下文,很难知道问题出在哪里。如果可以的话,你可以发布一个更完整的片段来描述你正在尝试做的事情。从您到目前为止发布的内容来看,我认为#myDiv div没有出现在页面的初始HTML中。因此,我看到了两种可能性:
#myDiv
$('#foo').append('<div id="myDiv"></div>')
#foo
$('#myDiv').text('Loaded!')
.load
$('#foo').load('/someurl')
$.get
$.post
success
complete
希望这能有所帮助。没有更多的上下文,很难给予你的问题一个更具体的答案,对不起!
lf5gs5x23#
尝试加载外部文件,然后在回调中插入代码:
$('#mydiv').load('myfolder/myfile.html', function() { $('#mynewdiv').html('loaded'); });
如果所有其他方法都失败,尝试使用$. AJAX 加载文件,并使用完整的处理程序插入内容。
3条答案
按热度按时间zynd9foi1#
您应该在就绪部分中为单击创建一个事件:
9q78igpj2#
如果没有更多的上下文,很难知道问题出在哪里。如果可以的话,你可以发布一个更完整的片段来描述你正在尝试做的事情。
从您到目前为止发布的内容来看,我认为
#myDiv
div没有出现在页面的初始HTML中。因此,我看到了两种可能性:$('#foo').append('<div id="myDiv"></div>')
)。然后,只要你的代码把它附加到页面中的某个元素上,这个元素就可以被使用了。所以在这种情况下,假设元素#foo
已经在DOM中了,你可以在下一行做一些类似$('#myDiv').text('Loaded!')
的事情。.load
搭配元素,($('#foo').load('/someurl')
)您可以添加另一个带有回调函数的参数,该函数将在内容加载后被调用。($.get
、$.post
等),以及从其success
或complete
回调动态追加/创建内容,请参阅前面的要点。希望这能有所帮助。没有更多的上下文,很难给予你的问题一个更具体的答案,对不起!
lf5gs5x23#
尝试加载外部文件,然后在回调中插入代码:
如果所有其他方法都失败,尝试使用$. AJAX 加载文件,并使用完整的处理程序插入内容。