(jquery).load和.live

时间:2011-08-12 17:13:07

标签: jquery

我已经使用.load(更好的工作)将content1.html加载到div中。

现在我想在content1.html内容中添加一个链接,点击后会将content2.html加载到div中。有什么想法我会怎么做?目前我已经:

google.setOnLoadCallback(function() {
    $('#howtoguide6').live('click', function() {

        $("#howtoguide6").click(function(){
            $("#hiw-content-area").load("pages/hiw/how_to.html");
            return false;
        });
    });
});

任何想法都会非常感激,我一直在把头发拉过来!


很抱歉,我似乎很好地解释了这个问题

基本上我已经加载了

google.setOnLoadCallback(function() {
$("#choose_design_service").click(function(){
    $("#hiw-content-area").load("pages/hiw/what_we_need_from_you.html");
    return false;
    });
});

- 哪个工作正常,我现在想要添加一些东西到“pages / hiw / what_we_need_from_you.html” 这会将“pages / hiw / how_to.html”加载到“#hiw-content-area”中。

我认为我遇到麻烦的地方是从已经加载的内容中做到这一点

感谢所有快速回复,希望这次我能更好地解释

此致 山姆

3 个答案:

答案 0 :(得分:4)

我假设(你没有解释哪个元素是哪个),你想要的是:

$('#howtoguide6').live('click', function() {
    $("#hiw-content-area").load("pages/hiw/how_to.html");
    return false;
});

答案 1 :(得分:1)

取出对“click()”的调用。

google.setOnLoadCallback(function() {
    $('#howtoguide6').live('click', function() {
            $("#hiw-content-area").load("pages/hiw/how_to.html");
            return false;
    });
});

您的原始代码无效,因为click()是函数bind('click')的快捷方式。 live()bind()类似,只是选择器的结果不必存在于DOM中。所以你的代码绑定了一个函数来点击绑定函数再次点击,而不是在处理程序中运行代码。

取出单击调用只会在单击元素时运行处理程序,因为(您已使用live()绑定到元素。

答案 2 :(得分:0)

我不明白的是第二次点击绑定。你尝试过了吗?

google.setOnLoadCallback(function() {
$('#howtoguide6').live('click', function() {
        $("#hiw-content-area").load("pages/hiw/how_to.html");
        return false;
});

});