我试图用jquery load()刷新div;但是负载显示正确的信息,但重复了div中不存在的页面的整个部分
$.ajax({
type: 'POST',
url: $(this).attr('action'),
cache: false,
data: $("#uses_form").serializeArray(),
success: function(data)
{
$('#uses_form_div').load('#uses_form_div');
}
});
return false; });
答案 0 :(得分:4)
我认为你有误会..
如果要将外部网址加载到div块
中$('#uses_form_div').load("./a.file");
会做到的。请参阅api docs。
或者如果你试图将$ .ajax调用的ajax响应加载到div中,它应该是
$.ajax({
type: 'POST',
url: $(this).attr('action'),
cache: false,
data: $("#uses_form").serializeArray(),
success: function(data)
{
$('#uses_form_div').html(data); // see here
}
});
根据以下评论更新:
如果要刷新包含页面的情况。我有两种方法可以推荐。
将包含的文件作为单独的URL并最初加载。因此,当jquery加载调用加载页面时,您将通过jquery加载它而不是include
。当你想要刷新它时,你可以$('#uses_form_div').load("./a.file");
你可以把它作为自己包含,当你需要更新时,发一个ajx请求获取数据。这里有2个选择。您可以在服务器上构建dom并将html作为ajax响应并简单地$("#uses_form_div").html(data)
或以json的形式获取响应
并在客户端构建您的dom并通过相同的$("#uses_form_div").html(data)
加载它。
答案 1 :(得分:0)
我也有同样的问题,但终于找到了答案
<script type="text/javascript">
function recp() {
setInterval(function()
{
$("#result").load(location.href+ ' #my');
});
}
</script>
&#13;
<div id="result">
<div id="my"><?php echo date('a:i:s'); ?></div>
</div>
&#13;