重新加载DIV而不重新加载整个页面

Fat*_*rie 7 html javascript php ajax jquery

我有一个Div标签,有一个php包含用信息填充div我想要做的就是让它每15秒调用一次,这样它就可以在那里更新信息而无需重新加载整个网页.我试过用JavaScript/jQuery做这个,我似乎无法让它工作

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.0/jquery.min.js"></script>
<script type="text/javascript">
var auto_refresh = setInterval(
function ()
{
$('.View').load('Small.php').fadeIn("slow");
}, 15000); // refresh every 15000 milliseconds
</script>

<div class="View"><?php include 'Small.php'; ?></div>
Run Code Online (Sandbox Code Playgroud)

这是我搜索之后的内容,发生了什么,它加载了Small.php,但它不刷新它或每15秒更新一次信息.

请帮忙!

我应该添加我应该显示的所有php数组都在Small.php中执行,而我包含它的页面就是这样它被隔离了.

编辑:没有人注意到我的第一个引用jQuery的脚本没有结束标记,这打破了我的第二个脚本.添加一个正确的结束标记后,脚本终于正常工作,但如果没有先使用fadeOut,fadeIn就无法正常显示.

kel*_*nik 9

你的代码有效,但fadeIn没有,因为它已经可见了.我想你想达到的效果是:fadeOut→交通load→交通fadeIn:

var auto_refresh = setInterval(function () {
    $('.View').fadeOut('slow', function() {
        $(this).load('/echo/json/', function() {
            $(this).fadeIn('slow');
        });
    });
}, 15000); // refresh every 15000 milliseconds
Run Code Online (Sandbox Code Playgroud)

在这里试试:http://jsfiddle.net/kelunik/3qfNn/1/

附加通知:正如Khanh TO所提到的,您可能需要摆脱浏览器的内部缓存.他提到,你可以使用$.ajax和/ $.ajaxSetup ({ cache: false });或随机黑客这样做.


Sha*_*dow 7

试试这个

<script type="text/javascript">
window.onload = function(){


var auto_refresh = setInterval(
function ()
{
$('.View').html('');
$('.View').load('Small.php').fadeIn("slow");
}, 15000); // refresh every 15000 milliseconds

}
</script>
Run Code Online (Sandbox Code Playgroud)