0
当用户单击链接时,表单打开(我使用引导模式与表单init),在提交新记录时创建并添加到页面上所有与jquery和ajax)。preventDefault适用于一种形式,但不适用于同一模式中的其他形式
如果用户点击新添加的项目,将打开相同的表单,ajax将获取数据并预先填充表单。但是这次jquery也会使用Delete按钮创建一个新窗体。
但是当我点击删除按钮时,表单会发出一个完整的(非ajax)请求,并且项目将被删除。
不知道为什么创建操作preventDefault有效(停止表单以完成POST请求),但是当我单击删除按钮/表单时,它会发出完整的请求。
这两个事件处理程序都在同一个匿名函数中。 下面是处理提交事件的jQuery/JavaScript的:
// save form
form.on('submit',function(e){
e.preventDefault();
$.when(submitAjaxRequest(this)).then(function(data, textStatus, jqXHR){
if(update){
$this.replaceWith(data)
}else{
addInput($this,data);
}
modal.modal('hide');
});
});
// delete form
$('.panel-heading').on('submit','form #deleteForm',function(event){
event.preventDefault();
$.when(submitAjaxRequest(this)).then(function(data, textStatus, jqXHR){
$this.remove();
modal.modal('hide');
});
});