简单的jQuery ajax压力测试脚本问题

时间:2010-09-01 08:42:54

标签: jquery ajax

我正在尝试创建一个简单的ajax加载测试脚本,它动态创建div,运行外部php脚本并将结果返回给创建的div。

我正在试图弄清楚如何创建一个创建的for循环,例如10个div并运行所有div的php脚本。最好是我可以指定要运行的脚本。

这是到目前为止的代码。它可以工作,但目前只创建了一个div。

<html>
<head>
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<style>
    .running { background-color: yellow; }
    .completed { background-color: green; }
}
</style>
<script>
    function RunScripts() {

        // Create a new div
        $('#container').append('<div id="div1" class="running"></div>');

        // Run a php script and return the content
        $.get("getcontent.php",
            function(data){
                $('#div1').html(data);
                $('#div1').removeClass('running').addClass('completed');
            }
        );
    }
</script>
</head>
<body>
    <a onclick="RunScripts();">Run test</a>
    <div id="container"></div>  
</body>
</html>

如何改进脚本以便它可以同时创建和运行多个脚本?

1 个答案:

答案 0 :(得分:1)

您可以使用setTimeout来运行函数的多个实例,即

setTimeout('RunScripts()', 0);
setTimeout('RunScripts()', 10); //Run again after 10ms.

也许这可以帮到你?

您还必须创建新的div,以便不覆盖响应数据,例如:

    // Create a new div
    var $div = $('<div>')
      .addClass('running')
      .appendTo('#container');

    // Run a php script and return the content
    $.get("getcontent.php",
        function(data){
            $div.html(data);
            $div.removeClass('running').addClass('completed');
        }
    );