AJax测试 - 添加延迟

时间:2009-10-14 11:00:29

标签: ajax

我正在尝试对我们编写的一些Ajax代码运行一些测试,现在显然在本地测试它运行速度非常快且很棒。我需要强制执行3秒的延迟,以便我可以看到正在显示加载程序并且用户体验足够好。

我已经尝试了以下但是收到错误“无用的settimeout”任何其他建议来实现这一目标?任何浏览器插件?

$('#formAddPost').submit(function() {


    //Load the values and check them
    var title = $(this).find('#Title');
    var description = $(this).find('#Description');
    var catId = $(this).find('#Categories');

    if (ValidateField(title) == false || ValidateField(description) == false) {
        $('.error-message').show();
        return false;
    }

    $('.error-message').hide();

    //Show the loading icon
    $('.add-post').hide();
    $('.add-post-loader').show();

    //Temp for testing - allows the showing to the loader icon
    setTimeout(MakeAJAXCall(title.val(), catId.val(), description.val()), 1500);


    return false;
});

function MakeAJAXCall(title, catId, description) {
    $.ajax({
        url: "/Message/CreatePost/",
        cache: false,
        type: "POST",
        data: ("title=" + title + "&description=" + description + "&categories=" + catId + "&ajax=1?"),
        dataType: "html",
        success: function(msg) {
            $('#TableMessageList').replaceWith(msg);
            $('.add-post-loader').hide();
            $('.add-post').show();
        }
    });
}

3 个答案:

答案 0 :(得分:2)

当你测试你的页面延迟服务器响应时,你可以在服务器端代码而不是客户端代码延迟吗?

答案 1 :(得分:0)

您可以使用fiddler执行此操作。

examples scripts包含一些暂停响应的示例。

答案 2 :(得分:0)

来自jsFiddle.net的这个工具会有用吗?

回应Javascript文件和XHR请求 http://doc.jsfiddle.net/use/echo.html