springmvc+jQuery 交互数据问题记录

$("#addRole").click(function () {
$.ajax({url:"/authority/add",
contentType:"application/json;charset=utf-8",
type:"post",
data:'{"authorityName":"测试权限","description":"sdad s"}',
success:function (result,status) {
alert(result['error']);alert(status);
}})
})

一、json parse错误:
经查,原来是json数据的格式要求非常严格,属性名称必须是用双引号“”括起来。 
复制代码代码如下:    var a=JSON.parse('{"a":"aaaaa"}');//正确    var a=JSON.parse("{'a':'aaaaa'}");//错误&nbs……

json数据data格式必须为‘{“key”:“value”}’,


二、jquery回调函数中无法使用$(this):

由于jquery的代码是Function作用域,而

success:function(strValue){}的作用域改变了,因此在该作用域下使用$(this)并不能找到当前对象。

 

比较简单的解决办法是在调用ajax之前保存一下当前的this变量。

比如:

 

$(function(){

$(".yourClass").each(function(){

var Price = $(this).html();

var $this = $(this);

 

$.ajax({

async: false,

type: "POST",

url:"modifyPriceAction.action",

dataType:"html",

data:{price:Price},

success:function(strValue){ 

$($this).html(strValue);

 

}

})

})

})

三、新生成元素无法绑定之前同类的事件

在函数中生成元素之后调用delegate即可

        $('div').delegate('input[name=a]','click',function(){$(this).parent().parent().remove()}); 

 

四、表单提交(多种提交操作、或者)

  1. <script type="text/javascript">  
  2.     //添加用户  
  3.     function addUser() {  
  4.         var form = document.forms[0];  
  5.         form.action = "${pageContext.request.contextPath}/user/addUser1";  
  6.         //form.action = "${pageContext.request.contextPath}/user/addUser2";  
  7.         //form.action = "${pageContext.request.contextPath}/user/addUser3";  
  8.         form.method = "post";  
  9.         form.submit();  
  10.     }  
  11. </script>  

接受方式:

SpringMVC 可以使用命令表单对象来自动设置值的。 只要你input里面的name的值和 你实体里面的值是一样的, 然后再Controller上面定义一个user对象, 就可以获取到了。
//登陆
@RequestMapping(value = "/signIn",method = RequestMethod.POST)
public String signUp(User user, Model model){
User queryUser = userService.queryById(user.getUserId());
boolean bl = user.getPassword().equals(queryUser.getPassword());
if(queryUser == null || !bl)
throw new dataException("用户名或密码错误");
model.addAttribute("user",queryUser);
return "info";
}

转载于:https://www.cnblogs.com/pemty/p/7469705.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值