日期:2014-05-16 浏览次数:20358 次
Struts2中配置JSON格式数据Ajax请求例子(原创):
1、在struts.xml中配置json格式数据传输的配置,代码如下:
<?xml version="1.0" encoding="UTF-8"
?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD
Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<!-- 事件管理 ajax -->
<package
name="ajax" namespace="/ajax" extends="json-default">
??
<action
name="*_eventreg" class="eventreg" method="{1}Event">
????
<result type="json">
??????
<param
name="root">result</param>
????
</result>
??
</action>
</package>
</struts>
注:代码中绿色的部分即为配置json格式数据ajax请求的配置。
2、Action中将数据转化成json数据,并跳转
/**
* 根据事件分类选择事件种类
* @return
*
@throws Exception
*/
public String gettypeEvent() throws
Exception {
????
String clsfId =
EventClsf.getIdByClsfCode(form.getEvtClsfCd());
????
List<EvtTypeUI> hm = EventType.getListById(clsfId);
???? JSONArray jsonArray =
JSONArray.fromObject(hm);
????
result = jsonArray.toString();
???? return SUCCESS;
}
3、页面请求代码:
$.ajax({
????
type: "POST",
????
url:
"/SRSS/ajax/gettype_eventreg.action",
????
data:
"form.evtClsfCd="+evtClsfCd,
?? ?
success:
function(data){
??????? var
dataObj = eval( "(" + data + ")" );
???????
$.each(dataObj,function(index,content){
?????????
//循环取出数据
???????
});
????
}
});
注:绿色的代码是将传回来的数据转化为json格(出自:疯狂的IT人
)