解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题


Posted in jQuery onApril 10, 2019

先查看<form>标签是否有action属性,如果没有,并且最后<button>标签的type属性为'submit‘时,默认提交位置就是当前页面

如果在页面右键检查,点击网络,会在开头发现这样的post包:

解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题

在右侧消息头处可见,请求网址为当前网址,并且响应头部类型为html

所以只要把form表单里最后提交按钮的type="submit"换为type="button",把按钮变成原生按钮,

就可以正确使用ajax方法传递数据,原因就是form表单最后的提交按钮与使用ajax传递数据冲突了

因为这个原因浪费了挺久时间,甚至把代码又从头到尾写了一遍(感觉自己好蠢啊!),总结了一下调试过程。

先贴一下ajax代码:

$(function () {
      $("#register").on('click',function () {
        $.ajax({
          type: 'post',
          url:"{:url('insert')}",
          data:$('#login').serialize(),
          dataType:'json',
          success:function (data) {
            alert('成功');
          },
          error:function () {
            alert('error');
          }
        })
      })
    });

这里‘#register'是提交按钮,‘#login'是表单,url发送到一个php脚本(插入表单数据到数据库)。

用谷歌浏览器打开页面,点击注册按钮后,当前页面刷新,没有任何反应。

正常情况下,ajax执行正确或失败,根据上述代码都应该有消息弹窗,于是感觉到哪里出了问题。

打开数据库,发现表单的数据都已经插入到数据库了,说明后台php脚本是运行成功的,只是在返回数据的时候出现了问题。

右键检查找到该post包,发现响应头部类型为html,而我设置的返回类型为json。

更换了Edge浏览器,问题同样是数据库插入了数据,但是结果没有消息弹窗。

更换火狐浏览器,再次点击注册按钮时出现了消息弹窗,但是闪了一下就没了!隐隐约约发现弹窗显示为‘error'(感谢火狐浏览器!)

总结

以上所述是小编给大家介绍的解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

jQuery 相关文章推荐
为JQuery EasyUI 表单组件增加焦点切换功能的方法
Apr 13 jQuery
jQuery.ajax向后台传递数组问题的解决方法
May 12 jQuery
jQuery手风琴的简单制作
May 12 jQuery
jQuery滚动插件scrollable.js用法分析
May 25 jQuery
JavaScript之事件委托实例(附原生js和jQuery代码)
Jul 22 jQuery
jQuery插件DataTables分页开发心得体会
Aug 22 jQuery
jQuery实现的页面详情展开收起功能示例
Jun 11 jQuery
jQuery时间戳和日期相互转换操作示例
Dec 07 jQuery
jQuery实现的点击显示隐藏下拉菜单功能完整示例
May 17 jQuery
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
Feb 01 jQuery
jQuery实现简单全选框
Sep 13 jQuery
jquery实现加载更多&quot;转圈圈&quot;效果(示例代码)
Nov 09 jQuery
jQuery中实现text()的方法
Apr 04 #jQuery
基于 jQuery 实现键盘事件监听控件
Apr 04 #jQuery
jQuery分组选择器简单用法示例
Apr 04 #jQuery
jQuery实现带3D切割效果的轮播图功能示例【附源码下载】
Apr 04 #jQuery
jquery简单实现纵向的无缝滚动代码实例
Apr 01 #jQuery
jQuery事件blur()方法的使用实例讲解
Mar 30 #jQuery
jQuery实现动态添加和删除input框代码实例
Mar 29 #jQuery
You might like
简单介绍PHP非阻塞模式
2016/03/03 PHP
浅谈php中fopen不能创建中文文件名文件的问题
2017/02/06 PHP
tp5框架基于ajax实现异步删除图片的方法示例
2020/02/10 PHP
js 键盘记录实现(兼容FireFox和IE)
2010/02/07 Javascript
js模拟点击事件实现代码
2012/11/06 Javascript
js综合应用实例简单的表格统计
2013/09/03 Javascript
jquery 选取方法都有哪些
2014/05/18 Javascript
JavaScript中Boolean对象的属性解析
2015/10/21 Javascript
JS生成某个范围的随机数【四种情况详解】
2016/04/20 Javascript
基于JS实现移动端向左滑动出现删除按钮功能
2017/02/22 Javascript
js常用的继承--组合式继承
2017/03/06 Javascript
解决layUI的页面显示不全的问题
2019/09/20 Javascript
如何基于原生javaScript生成带图片的二维码
2019/11/21 Javascript
vue中对象数组去重的实现
2020/02/06 Javascript
js实现特别简单的钟表效果
2020/09/14 Javascript
微信小程序实现打卡签到页面
2020/09/21 Javascript
在Vue中使用mockjs代码实例
2020/11/25 Vue.js
[01:45]DOTA2众星出演!DSPL刀塔次级职业联赛宣传片
2014/11/21 DOTA
[11:33]DAC2018 4.5SOLO赛决赛 MidOne vs Paparazi第二场
2018/04/06 DOTA
浅析Python中else语句块的使用技巧
2016/06/16 Python
python网络爬虫学习笔记(1)
2018/04/09 Python
浅谈pytorch和Numpy的区别以及相互转换方法
2018/07/26 Python
Tensorflow分类器项目自定义数据读入的实现
2019/02/05 Python
如何运行带参数的python脚本
2019/11/15 Python
python隐藏类中属性的3种实现方法
2019/12/19 Python
使用豆瓣源来安装python中的第三方库方法
2021/01/26 Python
详解HTML5表单新增属性
2016/12/21 HTML / CSS
Html5剪切板功能的实现代码
2018/06/29 HTML / CSS
加拿大女装网上购物:Reitmans
2016/10/20 全球购物
粉红色的鲸鱼:Vineyard Vines
2018/02/17 全球购物
留学自荐信
2013/10/10 职场文书
新闻专业大学生找工作的自我评价
2013/10/30 职场文书
五年级学生评语
2014/04/22 职场文书
2014年前台文员工作总结
2014/12/08 职场文书
门面租赁合同范文
2019/08/06 职场文书
WCG2010 星际争霸决赛 Flash vs Goojila 1 星际经典比赛回顾
2022/04/01 星际争霸