如何在不重新加载整个页面的情况下重新加载div?

时间:2011-08-24 11:59:19

标签: javascript jquery ajax html reload

我想我所要求的对大多数人来说都很容易。我想重新加载div而不重新加载整个页面。最好的方法是什么?

<div class="black_text" id="cp_in_content_div">
<?php
$id = $_GET["id"];
$result = mysql_query("SELECT * FROM Setting WHERE ID = $id");
$row = mysql_fetch_array($result);
switch ($_GET["action"])
{
    case "delete":
    if (!unlink("$_SERVER[DOCUMENT_ROOT]setting/$row[Filename]"))
    {
        echo "Error.";
        header("Refresh: 2.5; URL=delete_setting.php?id=$id");
        exit();
    }
    if (!mysql_query("DELETE FROM Setting WHERE ID = $id"))
    {
        echo "Error.";
        header("Refresh: 2.5; URL=delete_setting.php?id=$id");
        exit();
    }
    else
    {
        echo "Ok!";
        header("Refresh: 1.25; URL=index.php");
    }
    break;
    default:
    echo "form";
}
?>
</div>

我需要那些标题(“刷新:...”)才能重新加载div而不是页面。

4 个答案:

答案 0 :(得分:13)

jQuery.load()可能是使用选择器异步加载数据的最简单方法,但您也可以使用任何jquery ajax方法(get,post,getJSON,ajax等)

请注意,load允许您使用选择器指定要加载的加载脚本的哪一部分,如

$("#mydiv").load(location.href + " #mydiv");

请注意,这在技术上确实会加载整个页面,而jquery会删除除了您选择的内容之外的所有内容,但这些都是在内部完成的。

答案 1 :(得分:8)

$("#div_element").load('script.php');

演示:http://sandbox.phpcode.eu/g/2ecbe/3

整个代码:

<div id="submit">ajax</div> 
<div id="div_element"></div> 
<script> 
$('#submit').click(function(event){ 
   $("#div_element").load('script.php?html=some_arguments');  

}); 
</script> 

答案 2 :(得分:1)

写一个按钮标签和点击功能

var x = document.getElementById('codeRefer').innerHTML;
  document.getElementById('codeRefer').innerHTML = x;

将此全部写入onclick函数

答案 3 :(得分:1)

使用此功能。

$('#mydiv').load(document.URL +  ' #mydiv');

注意,在hastag之前加一个空格。