<!-- Struts2的xml文件配置 -->
<struts>
<package name="default" namespace="/" extends="json-default" > <!-- 这里必须要继承json-default类 -->
<action name="JsonAction" class="com.simpleton.demo.action.JsonAction" method="executeAjax">
<result type="json">
<param name="root">result</param>
</result> <!-- 因为这里不是用result返回具体的视图,而是要返回json数据,所以这里的type是json -->
</action>
</package>
</struts>

  action类:

package com.simpleton.demo.action;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import javax.servlet.http.HttpServletRequest; import net.sf.json.JSONObject; import com.opensymphony.xwork2.ActionSupport; public class JsonAction extends ActionSupport{
private static final long serialVersionUID = 1L;
private String result;
private String name;
private String age;
private String position; /**
* 处理Ajax请求
* */ public String executeAjax(){ System.out.println(name);
Map<String,Object> map = new HashMap<String, Object>();
map.put("name", name);
map.put("age", age);
map.put("position", position); JSONObject json = JSONObject.fromObject(map);
result = json.toString();
System.out.println(result);
return SUCCESS;
} 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 String getAge() {
return age;
} public void setAge(String age) {
this.age = age;
} public String getPosition() {
return position;
} public void setPosition(String position) {
this.position = position;
}
}

  html页面

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>n.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="this is my page">
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> </head> <script type="text/javascript" src="js/jquery-3.0.0.min.js"></script>
<script type="text/javascript">
function btn(){
var $btn = $("#btn");
$btn.bind("click",function(){
$.ajax({
type:"post",
url:"JsonAction",
data:{
name:$("input[name='name']").val(),
age:$("input[name='age']").val(),
position:$("input[name='position']").val()
},
dataType:"json",
success:function(data){
var d = eval("("+data+")"); $("#s_name").text(""+d.name+"");
$("#s_age").text(""+d.age+"");
$("#s_position").text(""+d.position+"");
},
error:function(){
alert("错误");
}
});
});
} $(document).ready(function(){
btn();
});
</script>
</head> <body>
<div id="div_json">
<h5>录入数据</h5>
<br>
<form action="JsonAction" 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" class="btn" value="提交结果">
</form>
<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>
</html>

  这个案例简单了实现了利用jQuery以及ajax进行html页面与struts之间的数据交互,摆脱了以前一直应用的jsp页面。

毕业设计---json,Struts,ajax以及JQuery简单案例的更多相关文章

  1. jQuery 简单案例

    案例一:全选.反选.取消实例 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...

  2. json数据格式的简单案例

    json数据是一种文本字符串,它是javascript的原生数据格式,在数据需要多次重复使用时,json数据是ajax请求的首先.(注:ajax返回的数据格式支持三种分别为:文本格式,json.和xm ...

  3. struts2:使用JQuery、JSON和AJAX处理请求

    目的 在struts2中使用JQuery.JSON.AJAX等技术处理用户请求,并返回结果.返回结果可以是以JSONObject的方式返回,也可以是以JSONArray方式返回结果. 实现 1. 创建 ...

  4. JQuery中Ajax详细参数使用案例

    JQuery中Ajax详细参数使用案例 参考文档:http://www.jb51.net/shouce/jquery1.82/ 参考文档:http://jquery.cuishifeng.cn/jQu ...

  5. Ajax与ashx异步请求的简单案例

    Ajax与ashx异步请求的简单案例: 前台页面(aspx): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//E ...

  6. JSON 在Ajax数据交换中的简单运用

    随着浏览器内核更新,原先的json.js在最新的谷歌浏览下不管用了,运行报错,特此修改下代码,不使用json.js,使用Object自带的json转换方法,修改时间,2016年10月26日. 首先需要 ...

  7. asp.net——Ajax与ashx异步请求的简单案例

    Ajax与ashx异步请求的简单案例: 前台页面(aspx): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//E ...

  8. js中ajax连接服务器open函数的另外两个默认参数get请求和默认异步(open的post方式send函数带参数)(post请求和get请求区别:get:快、简单 post:安全,量大,不缓存)(服务器同步和异步区别:同步:等待服务器响应当中浏览器不能做别的事情)(ajax和jquery一起用的)

    js中ajax连接服务器open函数的另外两个默认参数get请求和默认异步(open的post方式send函数带参数)(post请求和get请求区别:get:快.简单 post:安全,量大,不缓存)( ...

  9. 原生js实现ajax与jquery的ajax库,及json

    这是一篇笔记博客, Ajax: 和服务器进行数据交换(异步) 用js实现复杂的原理:用于发送请求的对象在不同的浏览器中是不同的 同源策略:ajax发送请求的url地址与服务器地址必须是同一域名,协议, ...

随机推荐

  1. Volley源码分析(五)Volley源码总结篇

    volley关键的代码这里已经分析完了,下面梳理一下完整的Volley流程 Volley的使用从构造Request对象开始,Volley默认提供了四种request的实现,StringRequest, ...

  2. Locust环境搭建及应用-hc课堂笔记

    Locust环境搭建: 1,在命令窗口中,进入到python项目路径,如:d:\Pycharmproject\venv\Scripts 2,执行Scripts下的active.bat,进入到虚拟环境 ...

  3. debian文本配置网络备忘:/etc/network/interfaces

    我装了wheezy有gnome3,xfce4: 郁闷的是,不论在gnome还是xfce4中 我都无法图形登录或者切换用户到root: 而且我无法在普通用户下图形修改网络配置: 我也搜索不到启用root ...

  4. [转]C#操作INI文件

    在很多的程序中,我们都会看到有以.ini为后缀名的文件,这个文件可以很方便的对程序配置的一些信息进行设置和读取,比如说我们在做一个程序后台登陆的时候,需要自动登录或者是远程配置数据库连接,及保存密码设 ...

  5. scrapy (四)基本配置

    scrapy使用细节配置 一.建立项目 1.scrapy startproject 项目名字 2.进入项目: scrapy genspider 名字 不带http的根网址 3.默认模板(或改变模板) ...

  6. Java中的枚举使用详解

    转载至:http://www.cnblogs.com/linjiqin/archive/2011/02/11/1951632.html package com.ljq.test; /** * 枚举用法 ...

  7. HDU3853:LOOPS

    题意:迷宫是一个R*C的布局,每个格子中给出停留在原地,往右走一个,往下走一格的概率,起点在(1,1),终点在(R,C),每走一格消耗两点能量,求出最后所需要的能量期望   #include<i ...

  8. (转)LVS+Keepalived使用总结 vip丢失

    /sbin/ifconfig lo: $vip broadcast $vip netmask 255.255.255.255 up /sbin/ifconfig lo: 172.16.254.63 b ...

  9. 在AspNetCore 中 使用Redis实现分布式缓存 (转载)

    文章概念描述 分布式缓存描述:分布式缓存重点是在分布式上,相信大家接触过的分布式有很多中,像分布式开发,分布式部署,分布式锁.事物.系统 等有很多.使我们对分布式本身就有一个很明确的认识,分布式就是有 ...

  10. C# 文本转语音朗读

    1. 利用DONET框架自带的 SpeechSynthesizer ,缺点是没有感情色彩,抑扬顿挫等. using System; using System.Collections.Generic; ...