当只加载一个部分而不是整个页面时,在ajax中运行jquery?

时间:2011-06-13 18:07:22

标签: jquery

我有:

$("#option1").live("click", function(){
    $(".active").removeClass('active');
    $(this).addClass('active');
    $("#main").load("option1.php", function(){
    });
});

并且里面的脚本运行完美。但是我真正需要的是只调用option1.php页面的一个部分,如下所示:

$("#option1").live("click", function(){
    $(".active").removeClass('active');
    $(this).addClass('active');
    $("#main").load("option1.php #container", function(){
    });
});

Bute然后脚本停止工作,我假设那是因为我遗漏了包含脚本的head标签。如何在仅加载页面的一个部分时使其运行?有可能吗?

1 个答案:

答案 0 :(得分:0)

这是一个PHP脚本,您只需轻松发送部分页面即可。 之后,要加载它,您可以使用$.ajax jquery对象:

function loadContainer()
{
    var ajaxobject = $.ajax(
    {
        type:"POST",
        url:"option1.php",
        cache:false,
        async:true,
        global:false,
        dataType:"html",
        data:"part=container",
        timeout:10000,
        success:function(data)
        {
            $('#container').html(data);
        },
        error:function()
        {
            alert('Error; Unable to load option1.php');
        }
    });
    if(ajaxobject == undefined)
        alert('Ajax object creation failed');
}

在PHP方面,您只需要检查$_POST['part']是否等于container。 如果是,请仅发送您要发送的部分。