ajax 带参数请求后 在controller中获取参数

路程 发布于 2015/01/02 20:58
阅读 5K+
收藏 0

@JFinal   我使用Ajax方式请求后在Controller中获取不到相应的参数信息  代码如下  谢谢指点!

function addTest(){
var name = $("input[name=testModel.name]").val();
var age =  $("input[name=testModel.age]").val();
$.ajax({
   type: "POST",
   url: "addTest",
   data: {name:name,age:age},
   dataType: "json",
   success: function(data){
    if(data.success){
    window.location.href="play";
    }else{
    alert("保存数据出错!");
    }
   }
});
}

@ActionKey("/addTest")
public void addTest(){
HashMap<String,Object> resultMap = new HashMap<String,Object>();
try{
TestModel testModel = getModel(TestModel.class);
boolean flag = testModel.save();
if(flag){
resultMap.put("success", true);
}else{
resultMap.put("success", false);
}
}catch(Exception e){
resultMap.put("success", false);
}
renderJson(resultMap);
}



加载中
0
JFinal
JFinal
看下 eclipse 控制台有无 parameter 这一列输出,截个图上来。注意是在开发模式下: me.setDevMode(true);
0
路程
路程

引用来自“JFinal”的评论

看下 eclipse 控制台有无 parameter 这一列输出,截个图上来。注意是在开发模式下: me.setDevMode(true);

是的  我用的是开发模式:

//开发模式
arg0.setDevMode(true);

parameter  这一列也有输出  就是没有把参数和MODEL绑定,

数据库表就三个属性  id  name age.

我想不应该必须用form表单吧.

0
JFinal
JFinal

引用来自“JFinal”的评论

看下 eclipse 控制台有无 parameter 这一列输出,截个图上来。注意是在开发模式下: me.setDevMode(true);

引用来自“路程”的评论

是的  我用的是开发模式:

//开发模式
arg0.setDevMode(true);

parameter  这一列也有输出  就是没有把参数和MODEL绑定,

数据库表就三个属性  id  name age.

我想不应该必须用form表单吧.

 parameter 这一列有输出,那必定是可以通过 getPara(...) 获取到的,代码如下:

String name = getPara("name");
Integer age = getParaToInt("age");
   如果想 getModel 获取数,必须要先定义与数据表对应的 model,并且在页面的 参数要是 modelName.attribute,而不可以直接是 attribute。注意看 jfinal 手册以及 jfinal demo,里面有详细的代码示例
路程
路程
谢你 明白了!
返回顶部
顶部