SSH框架下jquery ajax的前后台传值

今天jajax弄了半天,总结了下失败的经验,是因为JAVA服务器端返回值不对,把正确的使用方法在这写一下,如果有和我一样框架的,可以参考参考:

JSP端:

function autoCode(){
       var f= document.standardAuthorizeForm
       jajax({
            url:"<%=request.getcontextpath()%>/standardsystem/standardsystem!autoProcesscode.do",
            data:"",
            async:false,
            success:function(data){
              f["processcode"].value=data.message;
            }
}
       )   

}
    url里面存放action那头要调用的方法,如果需要传参数给action中的方法就 data{"ACTION端需要的变量":JS端的变量},

    如果不需要参数就写data:"", 记住后头一定都是逗号不是分号。

    JAVA ACTION端:

     

public String autoProcesscode(){

   String processcode="123";
   Message msg= new Message();
   msg.setMessage(processcode);
   Struts2Utils.renderJson(msg);
 //这里不能直接
//Struts2Utils.renderJson(processcode);
//直接传processcode前success:function(data)获取不到值,必须得将processcode放在一个对象里,大家不需要关心msg对象啥,
//只需要知道这个msg有一个string类型叫message的私有变量可以用来存储processcode就行。
//此外还可以用来传List对象,但是直接传一个String XXX或者int XXX就是不行

}
为什么直接传String processcode,那边data就无法获取到值,这我不知道,反正按上述这么写,能成功的将后台的变量通过JAJAX传到前端就OK。  如果有大神知道原因的还望指点一二。

此外,如果前台data传值 data{"ACTION端需要的变量":JS端的变量},“action端需要的变量”必须要在对应的action文件中有对应同名的私有变量,并且有相对应的get set方法。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值