溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

關(guān)于在LayUI中使用AJAX提交巨坑記錄

發(fā)布時(shí)間:2020-10-16 13:55:28 來(lái)源:腳本之家 閱讀:364 作者:_LIFE_ 欄目:web開(kāi)發(fā)

如下所示:

<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>

上面代碼的紅色部分就是天坑:

癥狀:一個(gè)簡(jiǎn)單的AJAX提交表單操作,經(jīng)常發(fā)生后臺(tái)數(shù)據(jù)保存好了,前端layer彈出層沒(méi)有關(guān)閉,父頁(yè)面沒(méi)有刷新,定位發(fā)現(xiàn)是回調(diào)函數(shù)沒(méi)有執(zhí)行?。?!用Google Chrome瀏覽器這種現(xiàn)象較少,2而Safari 和 firefox瀏覽器100%發(fā)生。

解決過(guò)程:困擾了很久,以為是哪里代碼有問(wèn)題,檢查來(lái)檢查去沒(méi)發(fā)現(xiàn)問(wèn)題,后來(lái)基本定位到layUI這個(gè)框架。

結(jié)果:加上 紅色字體 return false,解決??!

附上官方文檔關(guān)于這里的說(shuō)明!!

form.on('submit(*)', function(data){
 console.log(data.elem) //被執(zhí)行事件的元素DOM對(duì)象,一般為button對(duì)象
 console.log(data.form) //被執(zhí)行提交的form對(duì)象,一般在存在form標(biāo)簽時(shí)才會(huì)返回
 console.log(data.field) //當(dāng)前容器的全部表單字段,名值對(duì)形式:{name: value}
 return false; //阻止表單跳轉(zhuǎn)。如果需要表單跳轉(zhuǎn),去掉這段即可。
});

這是個(gè)毛意思?AJAX提交的時(shí)候坑咋不說(shuō)?

以上這篇關(guān)于在LayUI中使用AJAX提交巨坑記錄就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI