我想为我的网站实现自动保存功能。
我的意思是,我希望用户在整个站点中编辑的所有字段都应该自动保存,而无需单击任何按钮。所以用户可以继续编辑。
[网站设计使用:CodeIgniter 和 JQuery]。
这个功能,我实现如下。
1.在javascript中创建了一个队列数据结构,我将用户所做的所有更改推送到该结构中。所以这就像一个包含所有用户更改的对象。
2.然后写了一个函数把这个Queue的内容保存到数据库中。
function start(){
var changeData = dq.get(); //getting the data from Queue
while(changeData !== undefined){
$.ajax({
type: 'POST',
url: '/ci/ajax/insert/',
data: {changeData},
success: function(data, status, xml){
alert('succefully inserted data -- '+data);
}
});
changeData = dq.get();
}
setTimeout(function(){ start(); }, 5000);
};
start();
在这里,我将间隔设置为 5 秒。
问题是,我在 5 秒内进行了两次或更多更改,但是只有第一个更改得到更新。但根据我所做的更改,我会收到 2 次或更多次警报。
我哪里错了?
还建议我实现自动保存功能的更好方法。
谢谢!