如何在ajax中设置加载时间

时间:2017-06-07 11:57:13

标签: php ajax

这是我的代码customize.js:

$(document).on('click','#savescore',function(e){

    var x = document.getElementsByTagName('input');

    $('input[name="name[]"]').each(function(){

        var values = ($(this).val());

        var a = $(this).attr('data');

        $.ajax({

                 url:"http://www.csscorecard.com/wp-content/themes/twentyseventeen/ajax/submit.php?function=updateScore",

                 type:"post",

                 data:{ score:values , id:a },
                 success:function(data){
                }

            });

           })
           $('#alert-success').addClass('show-alert-csp');
           $(this).disabled = true;

           document.getElementById('editscore').disabled = false;

})

我的问题是我的输入类型中有50个数据循环, 我想在$('#alert-success')之前的5秒内设置一个时间.addClass(' show-alert-csp');似乎使所有数据保存在数据库中,因为每次刷新内容后我都更新数据并非所有数据都更新。我希望在时间>时禁用光标5秒。

任何建议。

2 个答案:

答案 0 :(得分:0)

您可以使用 setTimeout

示例

setTimeout(function(){
 $('#alert-success').addClass('show-alert-csp');
},5000);  // 1 second = 1000

或者你可以在成功ajax之后完成。

示例

success:function(data){
  $('#alert-success').addClass('show-alert-csp');
}

答案 1 :(得分:0)

设定固定时间不是一个好方法。我们不确定该过程是否确实在您设置的时间内完成(如果服务器出现故障,如果服务器速度慢,该怎么办)。相反,您的AJAX请求应该返回一个响应(成功插入数据库后,或者没有这样做)。收到响应后,应在客户端调用回调函数以显示相应的成功/错误消息。

假设服务器返回相应的响应,您可以使用以下内容:

kable(table1, format = 'markdown', padding=-1L)