1. 程式人生 > >ajax同步和非同步+關於button的小坑

ajax同步和非同步+關於button的小坑

今天在做一個網頁增加功能的時候通過點選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