流程:

1.点击载入btn发起异步请求post

2.后台处理请求返回数据

3.前端获取数据成功,对数据进行处理

前端:

html:首先要导入jq包,不然怎么用ajax呢。

<script type="text/javascript" src="js/jquery.js"></script>
<select name="warId" id="warId" style="height:100%;width:107px">
<option value="">全部仓库 </option>
</select>
<script type="text/javascript">
$(document).ready(function(){ //这里实现的是: 点击class为add的button时载入仓库列表
$(".add").click(function(){
$.post("xxxx.do",function(data){ //要异步载入的action,和成功后的回调
var objs = data.warehouses; //相应action里的属性
var selObj = $("#wareId");
selObj.empty();
for (var i in objs) {
var obj = objs[i];
addOption(selObj,obj.id,obj.warehouseName); //为Select追加一个Option(下拉项)
}
},"json"); //返回类型
});
});
function addOption(selObj,value,text){
var optionstring = "<option value=\"" + value + "\" >"+ text + "</option>";
selObj.append(optionstring); //为Select追加一个Option(下拉项)
}
</script>

后台structs:

使用注解实现,

要注意的是声明类的时候要加注解:@ParentPackage("json-default")

方法声明注解: @Action(value = "xxxx", results = @Result(name = "success", type="json"))

须要跳转页面就把type = "json" 换成  location = "/mobile/auction_detailed.jsp" 要跳转的页面

@ParentPackage("json-default")
public class WarHouseAction extends ActionSupport {
@Autowired
private WarehouseService warehouseService; private List<Warehouse> warehouses; /**
* 后台ajax
* @return
* 须要跳转页面就把type = "json" 换成 location = "/mobile/auction_detailed.jsp" 要跳转的页面
*/
@Action(value = "addGood_before", results = @Result(name = "success", type="json"))
public String addGoodBefore(){
warehouses = warehouseService.findAllEnableWarehouses(); //这个是返回到页面的
return "success";
} public WarehouseService getWarehouseService() {
return warehouseService;
} public void setWarehouseService(WarehouseService warehouseService) {
this.warehouseService = warehouseService;
} public List<Warehouse> getWarehouses() {
return warehouses;
} public void setWarehouses(List<Warehouse> warehouses) {
this.warehouses = warehouses;
}
}

提示一下用的是jquery.js   v1.4.1的  ,用min的貌似是返回json的不是返回obj

structs2注解+jsp+ajax实现post异步载入select的更多相关文章

  1. jQuery的AJax异步载入片段

    主要用到load()方法以及getScript()方法,详细以一个样例说明: 在现有html文件里载入一个拟好的片段,以及在片段载入完毕之前阻止用户进一步操作的弹出框. 首先是现有html代码.无不论 ...

  2. lazyload.js实现图片异步载入

    所谓图片异步加载,意思是不用一次把图片全部加载完,你可以叫它延迟加载,缓冲加载都行. 看看你有没有这种需求:某篇文章图片很多,如果在载入文章时就载入所有图片,无疑会延缓载入速度,让用户等更久,所以,我 ...

  3. jsp+ajax实现无刷新

    jsp+ajax实现无刷新,鼠标离开文本框即验证用户名 jsp+ajax实现无刷新,鼠标离开文本框即验证用户名(本功能多用于注册) input.jsp(表单提交页面): %@ page content ...

  4. 使用 jsPlumb 绘制拓扑图 —— 异步载入与绘制的实现

    本文实现的方法能够边异步载入数据边绘制拓扑图. 有若干点须要说明一下: 1.  一次性获取全部数据并绘制拓扑图. 请參见文章: <使用 JsPlumb 绘制拓扑图的通用方法> ; 本文实现 ...

  5. jsp ajax实例讲解

    下面介绍JSP前台表单内容通过Ajax异步提交到后台Servlet进行校验(校验方式多种,包括提取数据库信息,校验用户名是否重复等),异步在JSP表单页面显示校验结果信息的基本过程. 一.说明: 1. ...

  6. 通过 jsp+ajax+servlet+webservice 远程访问天气预报服务

    通过 jsp+ajax+servlet+webservice 远程访问天气预报服务   - webservice 客户端访问的方式     1. java代码来访问     2. ajax 方式异步加 ...

  7. jsp ajax 数据库Demo

    转自:http://blog.csdn.net/rushkid02/article/details/7515058 下面介绍JSP前台表单内容通过Ajax异步提交到后台Servlet进行校验(校验方式 ...

  8. SpringMVC+Jquery -页面异步载入数据

    背景: 做项目时涉及到页面.当我打算在controller中传一个list到页面,然后通过<c:foreach>循环遍历出来时,同事说:你这样每次都要刷新.这都是几百年前使用的技术了.你用 ...

  9. 异步载入JS

      平时最常使用的就是这样的同步载入形式:    <script src="http://yourdomain.com/script.js"></script&g ...

随机推荐

  1. Cocos2d-x中父节点scale对子节点的影响

    背景:在前几天,刚接触cocos2d-x,随便找了一张图,作为一个CCSprite,而且设置了scale属性,然后在这个sprite上创建了一个CCLabelTTF,并用sprite->addC ...

  2. html 跳转页面,同时跳转到一个指定的位置

    比如我现在 a.html 的时候,我想跳转到 b.html ,并且是 b.html 的某一个位置,用 <a href=>, a.html里: <a href="b.html ...

  3. spoj Balanced Numbers(数位dp)

    一个数字是Balanced Numbers,当且仅当组成这个数字的数,奇数出现偶数次,偶数出现奇数次 一下子就相到了三进制状压,数组开小了,一直wa,都不报re, 使用记忆化搜索,dp[i][s] 表 ...

  4. 多线程——达到Runnable介面

    部分博客(多线程--继承Thread类)介绍了java多线程的第一种实现方法--继承Thread类.这篇博客介绍另外一种方法--实现Runnable接口,并实现run方法. 还用上篇博客的样例.如今用 ...

  5. Unity3D 游戏开发架构篇 ——性格一流的设计和持久性

    在游戏开发.游戏人物占了非常大的空间.所有内容都是由主角可以说游戏驱动. 下面来介绍一下一流的设计和持久性的作用. 一.应用场景 游戏中的角色类型不一而足,有不同的技能.有不同的属性等等.有些一个玩家 ...

  6. 图的创建和遍历(BFS/DFS)

    图的表示方法主要有邻接矩阵和邻接表.其中邻接表最为常用,因此这里便以邻接表为例介绍一下图的创建及遍历方法. 创建图用到的结构有两种:顶点及弧 struct ArcNode { int vertexIn ...

  7. PLSQL Developer 9.如何设置查询返回所有纪录(转)

    默认PLSQL Developer查询出来的记录只能是满屏那么多行,一般也就是二三十行,比较不方便. 根据以下设置,可以将其结果都返回. 方法:Tools>Preferences>Wind ...

  8. 使用邮件发送执行时间久的SQL语句

    ALTER proc [dbo].[usp_EmailLongRunningSQL] as begin declare@LongRunningQueries AS TABLE ( lrqId int ...

  9. javascript 的bind/apply/call性能

    javascript有两种使用频率非常高的三个内置的功能:bind/apply/call.许多技术是基于高点,这些功能实现.这三个功能被用来改变的功能运行环境.从而达到代码复用的目的. 先来所说bin ...

  10. Heibernate 入门笔记(一)---第一个demo

    最近在学heibernate,是看马士兵老师的视频学的,在这里总结一下,做点笔记.关于heibernate的优点,大家可以在网上 百度,这里不做赘述,直接讲怎么使用heibernate 步骤一:新建项 ...