由于我的ajax请求被绑定到按钮的click事件执行。
act_btn.click(function(){
var data = $("#action_content").serialize();
var url = "dorm_buil_add";
sendAjaxRequest(data,url,addDormitoryBuilding);//执行ajax请求
});
导致的问题是,第一次提交,执行一次,第二次提交执行两次,第三次提交执行三次。
原因:问题的原因是click事件绑定到按钮中,不是替换,而是append,即每次按钮按下后都会执行之前绑定的click事件。
解决:1:在加载时候进行绑定,只绑定一次。
$(document).ready(function() {
act_btn.click(function(){ var data = $("#action_content").serialize(); var url = "dorm_buil_add"; sendAjaxRequest(data,url,addDormitoryBuilding);//执行ajax请求 });
});
2:在每次绑定的时候,解绑一次。
act_btn.unbind('click').click(function(){
var data = $("#action_content").serialize();
var url = "dorm_buil_add";
sendAjaxRequest(data,url,addDormitoryBuilding);//执行ajax请求
});