如何向页面加载后创建的元素添加内容

发布于 2024-12-10 18:44:25 字数 182 浏览 0 评论 0原文

我有动态创建的 div,我想在加载时向其中添加一些元素。 jQuery .load().live() 没有帮助我。

$('div#mydiv').load(function(){
   $(this).html('loaded!');
});

I have div that created dynamically, and I want to add some elements into it when its loaded. jQuery .load() and .live() didn't help me.

$('div#mydiv').load(function(){
   $(this).html('loaded!');
});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

偏爱自由 2024-12-17 18:44:25

您应该在就绪部分创建一个单击事件:

$('input').live( 'click', function(){
        alert("!");
   });

You should make an event for click in ready section:

$('input').live( 'click', function(){
        alert("!");
   });
可遇━不可求 2024-12-17 18:44:25

如果没有更多背景信息,很难知道问题出在哪里。如果可以的话,请发布您想要执行的操作的更完整的片段。

从您到目前为止发布的内容来看,我认为 #myDiv div 不存在于页面的初始 HTML 中。所以我看到两种可能性:

  • 您有一些其他 JS 正在创建元素(例如 $('#foo').append('

    ')< /code> 然后,只要您的代码将其附加到页面中的某个元素,该元素就会可用,因此在这种情况下,假设元素 #foo 已经在 DOM 中,你可以做点什么就像下一行的 $('#myDiv').text('Loaded!') 一样,

  • 您正在将元素作为 AJAX 调用的一部分加载(即通过网络)。正在将 .load 与元素 ($('# foo').load('/someurl'))您可以添加另一个带有回调函数的参数,如果您使用的是 $.ajax 或其简写朋友($.get$.post 等),以及附加/创建内容动态地从其成功完整回调,请参阅前面的要点。

希望这有帮助。由于没有更多上下文,很难对您的问题给出更具体的答案,抱歉!

It's very hard to know what the problem is without more context. If you can, post a more complete snippet of what you're trying to do.

From what you've posted so far, I take it the #myDiv div is not present in the initial HTML of the page. So I see two possibilities:

  • You have some other JS that's creating the element (eg. $('#foo').append('<div id="myDiv"></div>'). Then the element will be available and 'there' as soon as your code appends it to some element in the page. So in this case, assuming element #foo is already in the DOM, you could do something like $('#myDiv').text('Loaded!') on the next line.
  • You're loading the element as part of an AJAX call (ie over the network). If you're using .load with an element ($('#foo').load('/someurl')) you can add another parameter with a callback function which will be called once the content has been loaded. If you're using $.ajax or its shorthand friends ($.get, $.post, etc.), and appending/creating content dynamically from its success or complete callbacks, see the previous bullet point.

Hope this helps. Without more context, it's hard to give a more specific answer to your question, sorry!

吲‖鸣 2024-12-17 18:44:25

尝试加载外部文件,然后在回调中插入代码:

$('#mydiv').load('myfolder/myfile.html', function() {
    $('#mynewdiv').html('loaded');
});

如果一切都失败,请尝试使用 $.Ajax 加载文件,并使用完整的处理程序插入内容。

Try loading the external file and then inserting your code in the callback:

$('#mydiv').load('myfolder/myfile.html', function() {
    $('#mynewdiv').html('loaded');
});

If all else fails, try using $.Ajax to load the file, and the complete handler to insert your content.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文