關(guān)于在LayUI中使用AJAX提交巨坑記錄
如下所示:
<script> layui.use(['layer', 'form','laydate'], function(){ var layer = layui.layer ,laydate=layui.laydate ,form = layui.form; form.on('submit(go)', function(data){ $.ajax({ url:'/user/addOrUpdate', method:'post', data:data.field, dataType:'JSON', success:function(res){ if(res.code='0'){ parent.closeIframe(res.msg); } else alert(res.msg); }, error:function (data) { } }) return false; }); }); </script>
上面代碼的紅色部分就是天坑:
癥狀:一個簡單的AJAX提交表單操作,經(jīng)常發(fā)生后臺數(shù)據(jù)保存好了,前端layer彈出層沒有關(guān)閉,父頁面沒有刷新,定位發(fā)現(xiàn)是回調(diào)函數(shù)沒有執(zhí)行?。?!用Google Chrome瀏覽器這種現(xiàn)象較少,2而Safari 和 firefox瀏覽器100%發(fā)生。
解決過程:困擾了很久,以為是哪里代碼有問題,檢查來檢查去沒發(fā)現(xiàn)問題,后來基本定位到layUI這個框架。
結(jié)果:加上 紅色字體 return false,解決?。?/p>
附上官方文檔關(guān)于這里的說明??!
form.on('submit(*)', function(data){
console.log(data.elem) //被執(zhí)行事件的元素DOM對象,一般為button對象
console.log(data.form) //被執(zhí)行提交的form對象,一般在存在form標簽時才會返回
console.log(data.field) //當前容器的全部表單字段,名值對形式:{name: value}
return false; //阻止表單跳轉(zhuǎn)。如果需要表單跳轉(zhuǎn),去掉這段即可。
});
這是個毛意思?AJAX提交的時候坑咋不說?
以上這篇關(guān)于在LayUI中使用AJAX提交巨坑記錄就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
在小程序中集成redux/immutable/thunk第三方庫的方法
這篇文章主要介紹了在小程序中集成redux/immutable/thunk第三方庫的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08javascript中mouseover、mouseout使用詳解
這篇文章主要介紹了javascript中mouseover、mouseout使用詳解的相關(guān)資料,需要的朋友可以參考下2015-07-07javascript基于定時器實現(xiàn)進度條功能實例
這篇文章主要介紹了javascript基于定時器實現(xiàn)進度條功能,簡單分析了javascript定時器的功能、使用方法并給出了基于定時器實現(xiàn)的進度條功能實例,需要的朋友可以參考下2017-10-10JavaScript中5種調(diào)用函數(shù)的方法
這篇文章主要介紹了JavaScript中5種調(diào)用函數(shù)的方法,本文詳細的介紹了Javascript中各種函數(shù)調(diào)用的方法及其原理,對于理解JavaScript的函數(shù)有很大的幫助,需要的朋友可以參考下2015-03-03JavaScript基于inquirer封裝一個控制臺文件選擇器
這篇文章主要介紹了JavaScript基于inquirer封裝一個控制臺文件選擇器,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下2022-08-08