【问题标题】:Selecting div which was created by Jquery .load选择由 Jquery .load 创建的 div
【发布时间】:2019-04-01 08:14:59
【问题描述】:

我在尝试将内容写入由 jQuery 创建的 div 时遇到问题 .load() 已被调用。

我知道这可以通过在 .on("click","el", func(){}) 中绑定一个元素来实现 - 但是需要通过 .html() 写入 div 的内容由另一个检查 url 中 # 的函数触发,不是一个事件。如下图:

function check_loaded_moduels()
{
    var current_loc = window.location.hash;

    if (current_loc == "#GamesLibrary")
    {
        load_user_games();
    }
}

function load_user_games()
{
    $.ajax({
        method: "POST",
        url: "load_user_games.php",
        dataType: "html"
    })
   .done(function(user_games)
   {
       $('.main_section').on("change", "#user_games", function()
       {
           $(".right_games_holder").html(user_games);
       })
   });
}

我定位的 div 最初并未加载到 DOM 中,这解释了为什么 jQuery 找不到它,尽管我使用了另一个直接绑定的 div .on() 按预期工作。但是,这个没有。

我尝试过使用

$(document).on("change",".right_games_holder", function()
{
   $(".right_games_holder").html(user_games);
}); 

但无济于事。如果不使用 .on() 将事件绑定到元素,我似乎找不到任何替代方法,尽管如前所述,这是不可能的。

【问题讨论】:

    标签: jquery html dom


    【解决方案1】:

    试试:

    $('.main_section').on("change", "#user_games", function(){
        $(this).find(".right_games_holder").html(user_games);
    })
    

    【讨论】:

    • 不幸的是,这不起作用,因为没有字段正在更改。也测试了,没有结果。
    猜你喜欢
    • 1970-01-01
    • 2011-08-11
    • 2014-04-21
    • 1970-01-01
    • 2011-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多