`
gongchangming
  • 浏览: 44322 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jQuery+json+struts2 开发备忘录(一)

阅读更多

首先准备

jquery.js

jsonplugin-0.32.jar如果是struts2.1.X那要换jsonplugin-0.33.jar

struts2开发包

 

struts.xml

<package name="exp" extends="json-default" namespace="/pb">
	<action name="getPackage" class="expPbAction" method="searchGroupPackageInfo">
		<result type="json"></result>
	</action>
</package>

 

*.action  注意用json最好action方法名不要以get开头,json把Acion类中所有的已get开头的方法返回值封装

 

private List<TInfPackage> packageList = new ArrayList<TInfPackage>();
public List<TInfPackage> getPackageList() {
  return packageList;
 }
 
 public void setPackageList(List<TInfPackage> packageList) {
  this.packageList = packageList;
 }
public String searchGroupPackageInfo(){
	packageList = groupService.getPackageInfoByGroupCode(groupCode);
	return SUCCESS;
}

 

 

*.jsp

$.ajax({
	url: "pb/getPackage.action",
	type: "post",
	dataType: "json",
	timeout: 1000,
	error: function(){
		alert("Error loading XML document");
	},
	success: function(json){var packages = json.packageList//可以能过json.*获取到action中任何一个代get方法的变量;showPackage(packages);}
});
		
function showPackage(packages){
	$("#package").empty();//清空下拉列表
	$.each(packages,function(i){//迭代json
		$("<option value='"+packages[i].code+"'>"+packages[i].name+"</option>").appendTo("#package")
	})
	var packageCode="${packageCode}";
	if(packageCode.length>0){
		$("#package").attr("value",packageCode);//根据value=*选中下拉列表项
	}
}
<select id="package" name="package">
</select>

 

分享到:
评论
1 楼 zhafengliang 2011-10-28  

相关推荐

Global site tag (gtag.js) - Google Analytics