没有提交按钮保存数据表单的好方法是什么?
我有一个主意。下面是示例性源代码。
var delay = 1000,
timeId,
ajax,
//fw is some framework
form = fw.get('myform');
form.getFields().on('change', changeEventHandler);
function changeEventHandler() {
clearTimeout(timeId);
timeId = setTimeout(this.ajaxRequest, delay);
}
function ajaxRequest() {
//What do with old ajax request? Abort it?
ajax = fw.ajax({
url: 'ololo',
params: {
data: form.getValues()
}
});
}老的ajax请求是怎么回事?中止吗?
还有别的主意吗?
发布于 2013-09-03 07:16:21
当设计一个没有保存按钮的交互式表单时,我也遇到了类似的问题。
首先,在每次更改时保存数据并不是个好主意。我在blur事件上使用,所以当输入失去焦点时,我检查值是否被更改(也就是说,不仅仅是焦点--对输入的模糊),如果它被更改,则禁用输入并发送ajax请求。当请求返回时,我再次启用了输入(如果ajax失败,可能会显示一个错误,等等,这取决于您的需要)。
这是做交互形式的最简单的方法。这避免了试图在服务器端修改相同值的多个请求的麻烦,也避免了监视所有ajax请求的麻烦。
https://stackoverflow.com/questions/18586126
复制相似问题