我正在使用以下代码在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字段中,传递了正确的数据,但刷新无效。

最佳答案

您可以将函数作为第一个参数传递给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>

09-17 20:22