Struts2结合EasyUI的combobox返回json

来源:互联网 发布:管理权限的软件 编辑:程序博客网 时间:2024/05/15 23:52
前台页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding
="UTF-8"
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<metahttp-equiv="Content-Type" content="text/html; charset=UTF-8">
<scripttype="text/javascript"
    src
="<%=request.getContextPath()%>/js/jquery-1.4.js"></script>
<linkrel="stylesheet" type="text/css"
    href
="<%=request.getContextPath()%>/css/easyui.css"/>
<scripttype="text/javascript"
    src
="<%=request.getContextPath()%>/js/jquery.easyui.min.js"></script>
<title>EasyUI</title>
</head>
<body>
   
<input class="easyui-combobox" name="language"
        data-options
="
                    url:'SRCEasyUI_combobox.do',
                    valueField:'key',
                    textField:'value',
                   multiple:true,
                  "              panelHeight:'auto'
>
</body>
</html>

Action方法:
package jp.vacation.holiday.action;

import java.util.ArrayList;
import java.util.List;

import jp.vacation.holiday.form.EasyUIForm;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import com.webpump.sdk.struts2.core.AbstractFwAction;

@Controller(
"EasyUIAction")
@Scope(
"prototype")
publicclass EasyUIActionextends AbstractFwAction{

   
private static finallong serialVersionUID= 1L;

   
private JSONArray jsonArray;

   
public JSONArray getJsonArray(){
       
return jsonArray;
    }


   
public void setJsonArray(JSONArray jsonArray){
       
this.jsonArray= jsonArray;
    }


   
public String combobox(){

        List
<JSONObject> jsonList =new ArrayList<JSONObject>();
       
for (int i= 0; i< 5; i++){
            EasyUIForm easyuiform
= new EasyUIForm();
            easyuiform.setKey(
"key"+ i);
            easyuiform.setValue(
"value"+ i);
            JSONObject js
= JSONObject.fromObject(easyuiform);
            jsonList.add(js);
        }

        JSONArray jarray
= JSONArray.fromObject(jsonList);
       
this.jsonArray= jarray;
       
return SUCCESS;
    }


}


form类
package jp.vacation.holiday.form;

publicclass EasyUIForm{

   
private String key;

   
private String value;

   
public String getKey(){
       
return key;
    }


   
public void setKey(String key){
       
this.key = key;
    }


   
public String getValue(){
       
return value;
    }


   
public void setValue(String value){
       
this.value = value;
    }


}


Struts2 的xml配置
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd"
>
<struts>
   
<package name="vacation" extends="vacation_common">
       
<result-types>
           
<result-type name="json" class="org.apache.struts2.json.JSONResult"/>
       
</result-types>
       
<action name="SRCEasyUI_combobox" method="combobox" class="EasyUIAction">
           
<result type="json">
       
<!--jsonArray必须在Action中定义,必须写它的get,set方法-->
               
<param name="root">jsonArray</param>
           
</result>
       
</action>
   
</package>
</struts>

combobox用的是json数组,json数组中放的是json对象
0 0
原创粉丝点击