Php 如何在ajax中设置加载时间
以下是我的代码customize.js:Php 如何在ajax中设置加载时间,php,ajax,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');
$(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').addClass('show-alert-csp')之前将时间设置为5秒;似乎使所有数据都保存在数据库中,因为每次刷新内容后更新数据时,并非所有数据都会更新。我想在时间>5秒时禁用光标
任何建议。您可以使用setTimeout 示例
setTimeout(function(){
$('#alert-success').addClass('show-alert-csp');
},5000); // 1 second = 1000
或者,您也可以在成功后使用ajax进行操作
示例
success:function(data){
$('#alert-success').addClass('show-alert-csp');
}
设定一个固定的时间不是一个好的解决方案。我们不确定该过程是否会在您设定的时间内完成(如果服务器出现故障,如果服务器运行缓慢,该怎么办)。相反,AJAX请求应该返回一个响应(在成功插入数据库或未能插入数据库时)。收到响应后,应在客户端调用回调函数以显示相应的成功/错误消息 假设服务器返回适当的响应,您可以得到如下结果:
$.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');
}
});
我尝试了这个方法,但如果数据库中保存了50个数据,则$('eart success').addClass('show-alert-csp');也将显示50倍。然后在成功函数中,您应该有一个计数器来计算它得到了多少响应。当它达到50时,即显示消息的时间。:)还是不走运,当我尝试该代码时,我更新的最后一个数据没有更新。数据中会有什么反应?我们可以使用setInterval,每5秒钟检查一次所有记录是否更新。如果已更新,则添加类并清除间隔。否则,在未更新所有记录之前进行检查。No response,#alert success没有添加该类。您需要在php代码中进行更改。只有在更新了所有记录后,才应返回。