一、JSP页面
<style type="text/css"> ul { list-style: none; } li { width: 200px; float: left; } span { color: red; text-decoration: underline; } </style> </head> <script type="text/javascript" src="js/jquery-1.8.3.js"></script> <script type="text/javascript" src="js/my.js"></script> <body> <div id="div_json"> <h5>录入数据</h5> <br /> <form action="#" method="post"> <label for="name">姓名:</label><input type="text" name="name" /> <label for="age">年龄:</label><input type="text" name="age" /> <label for="position">职务:</label><input type="text" name="position" /> <input type="button" id="btn" value="注册" /> </form> <br /> <h5>显示结果</h5> <br /> <ul> <li>姓名:<span id="s_name">赞无数据</span> </li> <li class="li_layout">年龄:<span id="s_age">暂无数据</span> </li> <li class="li_layout">职务:<span id="s_position">暂无数据</span> </li> </ul> </div> </body>
二、JS脚本
$(function(){ //按钮单击事件 $("#btn").click(function(){ //无刷新 $.ajax({ type: "POST", //提交方式 url: "reg.action", //跳转的action data: { //设置提交的数据源 name: $("[name='name']").val(), age: $("[name='age']").val(), position: $("[name='position']").val() }, dataType: "json", //设置需要返回的数据类型 success: function(data){ // alert(data); //弹出来的是文本格式{name:xxx,age:20,position:IT} //将数据转换成json类型 var obj = eval("(" + data + ")"); //绑定数据 $("#s_name").html(obj.name); $("#s_age").html(obj.age); $("#s_position").html(obj.position); }, error: function(){ alert("系统异常,请稍后重试!"); } }); }); });
public class RegAction extends ActionSupport { // 返回的结果 private String result; // 对应的数据 private String name; private int age; private String position; public String getResult() { return result; } public void setResult(String result) { this.result = result; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getPosition() { return position; } public void setPosition(String position) { this.position = position; } @Override public String execute() throws Exception { // 将数据存储在map里 Map<String, Object> map = new HashMap<String, Object>(); map.put("name", name); map.put("age", age); map.put("position", position); // 将map转换成json类型数据 JSONObject json = JSONObject.fromObject(map); // 给result赋值,传递给页面 result = json.toString(); return SUCCESS; } }
<package name="hang5" namespace="/" extends="json-default"> <action name="reg" class="com.hlx.json.RegAction"> <result type="json"> <!-- result是action中设置的变量名,也是页面需要返回的数据,该变量必须有setter和getter方法 --> <param name="root">result</param> </result> </action> </package>