* 1.将struts2-json-plugin.jar加入到项目中
* 2.使用AJAX向后台异步获取数据
$.post("order_ajaxGetGm",{"gtUuid":gtUuid},function(data){
...
});
$.post("order_ajaxGetGm",{"gtUuid":gtUuid},function(data){
...
});
* 3.在Action中写一个 ajaxGetGm方法,该方法从Ajax中接收getUuid参数,进而从后台查找数据封装到List中,将要返回的数据提供getter方法,用于ajax回调函数接收该数据
public Long gtUuid;//接收Ajax传过来的参数
private List<GoodsModel> gmList;//返回的数据提供getter方法
private GoodsModel goodsModel;//返回的数据提供getter方法
public String ajaxGetGm(){
gmList = goodsEbi.getAllByGtm(gtUuid);
gm = gmList.get(0);
return "ajaxGetGm";
}
* 4.设置对应的action所在的package,继承自json-default(json-default继承自struts-default)
<package name="default" namespace="/" extends="json-default">
<pre name="code" class="html"><result name="ajaxGetGm" type="json">
<param name="includeProperties">
gmList\[\d+\]\.uuid,//该表达式是正则表达式
gmList\[\d+\]\.name,
gm\.inPrice,
</param>
</result>
<pre name="code" class="html"><result name="ajaxGetGm" type="json">
<param name="includeProperties">
gmList\[\d+\]\.uuid,//该表达式是正则表达式
gmList\[\d+\]\.name,
gm\.inPrice,
</param>
</result>
* 6.回调函数获取从后台得到的已经封装的json数据
$.post("order_ajaxGetGm",{"gtUuid":gtUuid},function(data){
var gmList = data.gmList;//struts将gmList已经封装为json格式的数据
var gm = data.gm;
....
});