流程:

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. mysql5.1,5.5,5.6做partition时支持的函数

    mysql5.1支持的partition函数(http://dev.mysql.com/doc/refman/5.1/en/partitioning-limitations-functions.htm ...

  2. 基于HttpClient 4.3的可訪问自签名HTTPS网站的新版工具类

    本文出处:http://blog.csdn.net/chaijunkun/article/details/40145685,转载请注明.因为本人不定期会整理相关博文,会对相应内容作出完好.因此强烈建议 ...

  3. 一篇哥们自己的写的IBM电话面试感想-@大国

    两天没写博了,还是没有养成一个习惯.前天和昨天休息,和哥们几个出去打球,运动一下,放松下脑子.今天就补一篇我哥们自己的写的关于他的IBM电话面试的感想,希望能帮到有需要的人. ------------ ...

  4. 自定义ComboBox,简简单单实现

    private void Button_Click(object sender, RoutedEventArgs e) { Popup1.PlacementTarget = TesTextBox; P ...

  5. HDU1194_Beat the Spread!

    Beat the Spread! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  6. Bulk Insert Data

    Bulk Insert Data 命名空间:Oracle.DataAccess.Client 组件:Oracle.DataAccess.dll(2.112.1.0) ODP.NET 版本:ODP.NE ...

  7. Robotium原则的实施源代码分析

    从前面的章节<Robotium源代码分析之Instrumentation进阶>中我们了解到了Robotium所基于的Instrumentation的一些进阶基础.比方它注入事件的原理等,但 ...

  8. Nutch+Lucene搜索引擎开发实践

    网络拓扑 图 1 网络拓扑图 安装Java JDK 首先查看系统是否已经安装了其它版本号的JDK,假设有,先要把其它版本号的JDK卸载. 用root用户登录系统. # rpm-qa|grep gcj ...

  9. Android TextView里直接显示图片的三种方法

    方法一:重写TextView的onDraw方法,也挺直观就是不太好控制显示完图片后再显示字体所占空间的位置关系.一般假设字体是在图片上重叠的推荐这样写.时间关系,这个不付源代码了. 方法二:利用Tex ...

  10. Javascript设计模式系列三

    继承,一个类或对象继承另一个类或对象的三种方法.类式继承.原型式继承.掺元类. 一.类式继承,原型链.Extend函数. <script type="text/javascript&q ...