Php 如何在不重新加载网页的情况下更改div的内容?

Php 如何在不重新加载网页的情况下更改div的内容?,php,javascript,jquery,ajax,Php,Javascript,Jquery,Ajax,我有一个网站,它使用PHP来选择内容 <div> <? include ("navigation.php"); // navigation.php generates the menu ?> </div> <div> <? $type = $_GET["type"]; switch ($type) { case "page" : inclu

我有一个网站,它使用PHP来选择内容

<div>  
    <? include ("navigation.php"); // navigation.php generates the menu ?>
</div>
<div>
    <?      
        $type = $_GET["type"];
        switch ($type) {
        case "page" :
            include "Text.php";
            break;  
        case "news":
            include "news_2.php";
            break;
        default :
            include "main.php";     
        }
    ?>
</div>
url的格式为domain.com/index.php?类型。
我需要在不重新加载整个页面的情况下更改块内容,如何才能做到这一点?

这最好使用Ajax来完成。我喜欢使用jQuery的ajax函数。大概是这样的:

function load(page){    
    var datastring='ANY DATA YOU WANT TO SEND';

    $.ajax({
        type: "POST",
        url: 'your/pagehtml/',
        data: "bust="+Date()+datastring,
        dataType: "html",
        cache: false,
        success: function(html){ 
            $('#content').html(html)
        }
    });
    return false;
}
您不需要以这种方式发送URL中的页面。无论何时更改url,都必须加载不同的页面。在.htaccess重写之外。这不是你需要的


单击或任何您想要的操作即可触发此命令。

最好使用Ajax。我喜欢使用jQuery的ajax函数。大概是这样的:

function load(page){    
    var datastring='ANY DATA YOU WANT TO SEND';

    $.ajax({
        type: "POST",
        url: 'your/pagehtml/',
        data: "bust="+Date()+datastring,
        dataType: "html",
        cache: false,
        success: function(html){ 
            $('#content').html(html)
        }
    });
    return false;
}
您不需要以这种方式发送URL中的页面。无论何时更改url,都必须加载不同的页面。在.htaccess重写之外。这不是你需要的


点击或任何你想要的东西都可以触发此命令。

因为你已经用jquery标记了这个问题,我假设你知道那是什么,并且你正在将它加载到你的页面中

你只需要把你的身份证和身份证给我。。。满足于此

然后使用一点jquery。。以最简单的形式,仅在页面加载完成后将内容从“myurl.php”加载到“mydiv”:

$(document).ready(function() { 
  $("#mydiv").load("myurl.php");
});

毫无疑问,您需要一些逻辑来确定哪些负载以及在什么情况下。如果需要将数据传递回URL,则需要使用jquery ajax$.ajax。这一切都非常简单,web上有大量的示例,JQuery网站上也有很好的文档。

当您用JQuery标记问题时,我假设您知道这是什么,并且您正在将其加载到页面中

你只需要把你的身份证和身份证给我。。。满足于此

然后使用一点jquery。。以最简单的形式,仅在页面加载完成后将内容从“myurl.php”加载到“mydiv”:

$(document).ready(function() { 
  $("#mydiv").load("myurl.php");
});

毫无疑问,您需要一些逻辑来确定哪些负载以及在什么情况下。如果需要将数据传递回URL,则需要使用jquery ajax$.ajax。这一切都非常简单,web上有大量的示例,JQuery网站上有很好的文档。

如果您使用JQuery,这非常简单。您没有发布应该触发更改的内容,因此我假设您在另一个元素中有一个id为nav的链接列表

在此处阅读有关jQuery Ajax请求的更多信息:


我还建议做一些代码清理,比如在加载事件上缓存$content元素,比如window.container=$container,然后再使用window.container,但我保持原样,以便一切都保持清晰。

如果使用jQuery,这很容易。您没有发布应该触发更改的内容,因此我假设您在另一个元素中有一个id为nav的链接列表

在此处阅读有关jQuery Ajax请求的更多信息:


我还建议做一些代码清理,比如在load事件上缓存$content元素,比如window.container=$container,然后使用window.container,但是我还是保持原样,以便一切都保持清晰。

非常感谢,但是如果我从另一个文件中的mysql查询中获取内容,并且这使用了_get方法,我不知道如何执行此操作,您可以使用类似以下示例的方法传入数据:。如果您在传递的url上有查询字符串,它应该传递它们并正确地执行get,而不必像该示例中那样单独定义数据。非常感谢,但是如果我从另一个文件中的mysql查询中获取内容,并且这使用了_get方法,我不知道如何做,您可以使用类似于此处示例的方法传入数据:。如果您在传递的url上有查询字符串,它应该传递它们并正确执行get,而不必像该示例中那样单独定义数据。