错误表现:
会表现出来:ajax执行成功但是时而会进回调函数,时而不会进入回调函数。
分析原因:
页面的表达提交使用submit,然后又对这个提交按钮绑定一个点击事件,使用ajax来和后台进行交互,这个时候如果不return false;会导致ajax提交一次,submit提交一次,这样的错误不容易找出来
解决方法:
在ajax类的方法执行完了之后,需要return false;
例子:
$("#pAdd").click(function(){
var productName = $("input[name='productName']").val();
var productCre = $("textarea[name='productCre']").val(); if(productName !="" ){
$.ajax({url:"productAdd.htmls",
data:{
"productName" : productName,
"productCre" : productCre
},
success:function(data){
if(data.length > 0){ $('.table-sort', parent.document).DataTable({
data:data
});
}
// var index = parent.layer.getFrameIndex(window.name); 可以用这个获取当前要关闭的layer ,也可以使用parent.indexProductAdd 获取在父层定义的那个layer。open()的弹窗
parent.layer.close(parent.indexProductAdd); //获取到layer的弹出窗 关闭它
}}); }
return false;//页面的表达提交使用submit,然后又对这个提交按钮绑定一个点击事件,使用ajax来和后台进行交互,这个时候如果不return false;会导致ajax提交一次,submit提交一次,这样的错误不容易找出来,会表现出来:ajax执行成功但是时而会进回调函数,时而不会进入回调函数,
});