zoukankan      html  css  js  c++  java
  • 使用Ajax时[object%20object] 报错的解决方案

    踩坑经过

    最近初学Ajax,当我想把Ajax应用到自己项目中的时候,没有达到理想的效果,还报了如下错误:

    点击图中报错,产生报错页面如下:

    当时写的Ajax如下:

    // 提交修改密码表单
    $("#changePasseword").click(function(){
    	$.post({
    		url: "${pageContext.request.contextPath }/ChangePasswordServlet",
    		data:$("#changePasswordForm").serialize(),
    		success:function(data){
    			if(data=="修改成功"){
    				alert("修改成功"); 
    				$("#mainFrame").load("login.jsp");
    			}else if(data=="用户未登录"){
    				alert("用户未登录");
    				$("#mainFrame").load("login.jsp");
    			}else{ alert("修改失败"); }
    		}
    	});
    });
    

    上面写的内容也很简单,就是用jQuery中Ajax的post方法去提交修改密码的表单。按照语法来说,我写的语法并没有问题。在查了jQuery的api文档后,我怕决定改用向后台发送请求通用的$.ajax代替$.post,然后增加type属性,type="post"。然后问题就解决了。

    解决办法:

    1、用$.ajax代替$.post,增加type属性,type="post"

    上面的代码,修改过后如下:

    // 提交修改密码表单
    $("#changePasseword").click(function(){
    	$.ajax({
    		type: "post",
    		url: "${pageContext.request.contextPath }/ChangePasswordServlet",
    		data:$("#changePasswordForm").serialize(),
    		success:function(data){
    			if(data=="修改成功"){
    				alert("修改成功"); 
    				$("#mainFrame").load("login.jsp");
    			}else if(data=="用户未登录"){
    				alert("用户未登录");
    				$("#mainFrame").load("login.jsp");
    			}else{ alert("修改失败"); }
    		}
    	});
    });
    

    2、在我百度查看别人的博客时,发现了一个老哥的博客中还提到了jQuery版本过低的情况,这老哥的博客原文连接:(https://www.cnblogs.com/jinghun/p/6669623.html),我使用的jQuery版本是1.11.3,若不能解决,可以尝试使用新版本的jQuery

  • 相关阅读:
    约束布局ConstraintLayout看这一篇就够了
    1-9 最长连续递增子序列 (20 分)
    1-8 数组循环左移 (20 分)
    1-6 求链式线性表的倒数第K项 (20 分)
    CMD命令集(转自脚本之家)
    网卡、网关
    PHP Callable强制指定回调类型的方法
    PHP常用魔术方法(__invoke魔术方法)
    php 通过 yield 实现协程有什么使用场景
    PHP的yield是个什么玩意
  • 原文地址:https://www.cnblogs.com/windowsxpxp/p/12228961.html
Copyright © 2011-2022 走看看