$("#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()});
四、表单提交(多种提交操作、或者)
- <script type="text/javascript">
- //添加用户
- function addUser() {
- var form = document.forms[0];
- form.action = "${pageContext.request.contextPath}/user/addUser1";
- //form.action = "${pageContext.request.contextPath}/user/addUser2";
- //form.action = "${pageContext.request.contextPath}/user/addUser3";
- form.method = "post";
- form.submit();
- }
- </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";
}