刷新多个div

时间:2015-04-09 09:05:42

标签: javascript html refresh

我正在使用以下代码在2个不同的div中每2秒刷新一次数据

<script type="text/javascript">


    function refreshTable(divId, typeId, serverDesc){

        $.get('getServerData.php?vTypeId=' + $(typeId).val() + '&vServerDesc=' + $(serverDesc).val(), function(data){
           $(divId).html(data);
           window.setTimeout(refreshTable, 2000)})
    }    


    $(document).ready(function(){
      refreshTable("#Servers1", "#hdnTypeId1", "#hdnServerDesc1");
      refreshTable("#Servers2", "#hdnTypeId2", "#hdnServerDesc2");
    });    

</script> 

我正在为不同的div获取正确的数据,但刷新不起作用。 在hdnTypeId字段和hdnServerDesc字段中,传递了正确的数据,但刷新不起作用。

2 个答案:

答案 0 :(得分:1)

你正在回调没有参数的refreshTable,改变

window.setTimeout(refreshTable, 2000)

window.setTimeout(function(){refreshTable(divId,typeId,serverDesc);}, 2000)

答案 1 :(得分:0)

您可以将函数作为第一个参数传递给window.setTimeout,如下所示:

<script type="text/javascript">
    function refreshTable(divId, typeId, serverDesc){

        $.get('getServerData.php?vTypeId=' + $(typeId).val() + '&vServerDesc=' + $(serverDesc).val(), function(data){
           $(divId).html(data);

           window.setTimeout(function() {
               refreshTable(divId, typeId, serverDesc);
           }, 2000)})
    }    

    $(document).ready(function(){
      refreshTable("#Servers1", "#hdnTypeId1", "#hdnServerDesc1");
      refreshTable("#Servers2", "#hdnTypeId2", "#hdnServerDesc2");
    });    

</script>