首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

prototype+json+struts2 ajax使用

2012-10-09 
prototype+json+struts2 ajax应用%@page languagejava importjava.util.* pageEncodingUTF-8%

prototype+json+struts2 ajax应用

<%@page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html>  <head>    <title>test</title>    <meta http-equiv="pragma" content="no-cache">    <meta http-equiv="cache-control" content="no-cache">    <meta http-equiv="expires" content="0">       <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">    <meta http-equiv="description" content="This is my page">    <!--    <link rel="stylesheet" type="text/css" href="styles.css">    -->  </head>    <script type="text/javascript" src="js/common/prototype.js"></script>    <script language="javascript" type="text/javascript">        function getJson()        {             var url = 'JSONExample.action';             var pars = '';             var myAjax = new Ajax.Request(url,{                 method:'get',                 encoding:'UTF-8',                 parameters:pars,                 onComplete:function(json){                     var JSONobj=eval('('+ json.responseText +')');                     var html="" ;                     var menuid="";                                       html += "<li>" + JSONobj.newName +"</li>";                                        var ints = JSONobj.ints;                     for (var i=0; i< ints.length; i++){                        html += "<li>" + ints[i] +"</li>";                     }                                        var map = JSONobj.map;                     for(array in map){                        html += "<li>" + array + ":" + map[array] +"</li>";                     }                                        $("item").innerHTML=html;                 }             }            }</script>    <body>      <input type="button" name="button" id="button" onclick="getJson()"value="点击测试">      <div id="item"></div>    </body></html>

?

<package name="example" extends="json-default"> <action name="JSONExample" method="executeJson"> <result type="json"/> </action> </package>?

package action; import java.util.HashMap;import java.util.Map;import com.googlecode.jsonplugin.annotations.JSON;import com.opensymphony.xwork2.ActionSupport; public class JSONExample extends ActionSupport { /** * */ private static final long serialVersionUID = 4588482034890372410L; // 封装请求参数的三个属性 //format= 例如"yyyy-MM-dd'T'HH:mm:ss"。 private String field1; private transient String field2; private String field3; // 封装处理结果的属性 private int[] ints = { 10, 20 }; @SuppressWarnings("unchecked") private Map map = new HashMap(); private String customName = "custom"; @SuppressWarnings("unchecked") public String executeJson() { map.put("name1", "sinlff1"); map.put("name2", "sinlff2"); map.put("name3", "sinlff3"); return SUCCESS; } // 三个请求参数对应的setter和getter方法 @JSON(serialize = false) //format public String getField1() { return field1; } public void setField1(String field1) { this.field1 = field1; } @JSON(serialize = false) public String getField2() { return field2; } public void setField2(String field2) { this.field2 = field2; } @JSON(serialize = false) //format public String getField3() { return field3; } public void setField3(String field3) { this.field3 = field3; } public void setCustomName(String customName) { this.customName = customName; } // 封装处理结果的属性的setter和getter方法 public int[] getInts() { return ints; } public void setInts(int[] ints) { this.ints = ints; } @SuppressWarnings("unchecked") public Map getMap() { return map; } @SuppressWarnings("unchecked") public void setMap(Map map) { this.map = map; } // 使用注释语法来改变该属性序列化后的属性名 @JSON(name = "newName") public String getCustomName() { return this.customName; } }?

?

?

热点排行