struts ajax 下拉框
最近实习没什么时间写阅读笔记,就把项目中用到的一些技术点记录一下,写的不是很详细,只是把一些大概的代码贴出来:
JSP页面
window.onload = function() {
Ext.Ajax.request( {
url : 'statistics_getCjdw.action',
success : function(response) {
var data = eval('(' + response.responseText + ')');
for ( var i = 0; i < data.length; i++) {
var op = document.createElement("option");
var xl = document.getElementById('name');
op.text = data[i].name;
op.value = data[i].id;
xl.add(op);
}
}
});
};
Action:
// 得到城建单位下拉列表
public String getCjdw() {
List list = statisticsService.getCjdw();
List listsj = new ArrayList();
JSONArray jsonArray = new JSONArray(); // json的数组
for (int i = 0; i < list.size(); i++) {
FrontOption fo = new FrontOption();
Object[] obj = (Object[]) list.get(i);
fo.setId(obj[0].toString());
fo.setName((String) obj[1]);
listsj.add(fo);
}
// 讲list 属性从object 转换成 属性
jsonArray = JSONArray.fromObject(listsj); // 把list方法换成json 对象
this.result = jsonArray; // 付给返回去的值
return "cjdw";
}
Struts.xml
<action name="statistics_*" class="StatisticsAction" method="{1}">
<result type="json" name="success" />
<result type="json" name="cjdw">
<param name="root">result</param>
</result>
</action>
Jar包
ezmorph-1.0.6.jar
commons-lang 2.4
commons-beanutils 1.7.0
commons-collections 3.2
commons-logging 1.1.1