javascript - ajax post提交后又自動請求了一次get
問題描述
html代碼
<form method='post' class='form-horizontal'> <p class='form-group'><label class='col-lg-2 control-label'>上級權限</label><p class='col-lg-4'> <select name='pid'><option value='0'>頂級權限</option>{volist name='authRuleRes' id='authRule'}<option value='{$authRule.id}'><?php if($authRule[’level’]!=0){echo ’|’;} echo str_repeat(’—’, $authRule[’level’]*3)?>{$authRule.title}</option>{/volist} </select></p> </p> <p class='form-group'><label class='col-lg-2 control-label'>權限名稱</label><p class='col-lg-8'> <input type='text' name='title'/></p> </p> <p class='form-group'><label class='col-lg-2 control-label'>控制器/方法</label><p class='col-lg-8'> <input name='name' type='text' /></p> </p> <p class='form-group'><p class='col-lg-offset-2 col-lg-8'> <input type='submit' value='提交' /> <input type='reset' value='重置'></p> </p></form>
js代碼
$(’.form-horizontal’).submit(function(event) { var data = $(this).serialize(); $.ajax({type:'post',url:'/authrule/add',async:true,data:data,success:function(res){ if(res.code == 1){Notify(res.msg, ’top-right’, ’5000’, ’success’, ’fa-check’, true);return false; }else{Notify(res.msg, ’top-right’, ’5000’, ’danger’, ’fa-times’, true);return false; }} }) return false;})
post提交正常,但是提交后自動請求了一個get,請問哪錯了嗎?
問題解答
回答1:$(’.form-horizontal’) 這個選擇器選擇了一個很大的范圍,事件傳輸就有可能觸發二次, 建議,寫精確一點比如$(’.form-horizontal input[type=submit]’)
回答2:這個很常見, 跨域了吧?
相關文章:
1. node.js - 在vuejs-templates/webpack中dev-server.js里為什么要exports readyPromise?2. mysql優化 - 關于mysql分區3. html5 - 如何實現帶陰影的不規則容器?4. javascript - 循環嵌套多個promise應該如何實現?5. python - 管道符和ssh傳文件6. 請教各位大佬,瀏覽器點 提交實例為什么沒有反應7. objective-c - iOS開發支付寶和微信支付完成為什么跳轉到了之前開發的一個app?8. javascript - 為什么這個點擊事件需要點擊兩次才有效果9. javascript - ionic2 input autofocus 電腦成功,iOS手機鍵盤不彈出10. vue.js - vue 打包后 nginx 服務端API請求跨域問題無法解決。
