今天在做一个网页增加功能的时候通过点击button按钮绑定执行增加操作的事件然后再跳转到别的页面
关键代码:
function addbook() {
if (btnver()) {
var bname = $("#bname").val();
var bauthor = $("#bauthor").val();
var buydate = $("#buydate").val();
var btype = $("#btype").val();
$.getJSON("DoBook", "opr=addbook&bname=" + bname
+ "&bauthor=" + bauthor + "&buydate="
+ buydate + "&btype=" + btype, callback);
}
function callback(data) {
if (data.addflag == "true") {
alert("添加成功!");
window.location.href = "/BookManage/bookmanage/main.jsp";
} else {
alert("添加失败!");
}
}
}
可是提示框提示添加成功后却不跳转到指定的页面
原来是button 按钮没有设置 type="button" 所以 button按钮默认 为submit 所以点击button会跳转的
form表单 action 指定的 路径 而此时又绑定了事件让它跳转到另一个页面 所以有冲突,不会跳转
解决方法: 把 button 的 action 删除 在button 添加 type="button" 即可
之前以为是getjson异步操作导致的,后来发现是乌龙一场查了很多关于ajax同步和异步资料,学习到了很多知识
感谢bug !
ajax异步和同步转自:https://www.cnblogs.com/cai170221/p/7065096.html