jquery Ajax实现Select动态添加数据


Posted in jQuery onJune 08, 2017

jquery Ajax实现Select动态添加数据,具体内容如下

1.背景 

最近在工作中,遇到了一个关于select的问题。一般情况下,select下拉框中的数据都是固定的或者直接在jsp中读取列表值显示。但是,这次要实现select与别的选项框联动,也就是要动态添加option数据。查阅了很多资料,终于搞定。下面就分享一下,如何利用jQuery和Ajax实现select动态添加数据。 

2.本文代码实现的是车辆型号根据车辆品牌联动显示的功能。首先,是jsp中的车辆品牌定义,这个很简单。如下:

<li class="form-row">
<span style="white-space:pre"> </span>
<span class="form-lbl"><i class="tip form-tip">*</i>车系</span>
 <select class="form-select" name="modelId">
 </select>
</li>

然后,是JS代码: 

function getModelList(){ 
 var brandId = $("select[name=brandId]").val(); 
 $("select[name=modelId]").empty(); //清空
 $.ajax({url:'/getModelList.do',
 type:"post",
 data:{
 brandId : brandId
 },
 cache: false,
 error:function(){
 }, 
 success:function(data){
 var modelList = data.modelList;
 if(modelList && modelList.length != 0){
 for(var i=0; i<modelList.length; i++){
  var option="<option value=\""+modelList[i].modelId+"\"";
  if(_LastModelId && _LastModelId==modelList[i].modelId){
  option += " selected=\"selected\" "; //默认选中
  _LastModelId=null;
  }
  option += ">"+modelList[i].modelName+"</option>"; //动态添加数据
  $("select[name=modelId]").append(option);
 }
 }
 }
 });
}

最后,是后台代码

@RequestMapping("/getModelList")
 @ResponseBody
 public Map getModelList(Integer brandId) {
 List<SrmsModel> modelList = null;
 try{
 modelList = carInfoManager.getSrmsModelListByBrandId(brandId);
 }catch(Exception e){
 LOGGER.error("获取年租车辆型号异常:{}", e.getMessage());
 }
 Map<String, Object> returnMap = Maps.newHashMap();
 returnMap.put("modelList", modelList);
 return returnMap;
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
详谈jQuery中使用attr(), prop(), val()获取value的异同
Apr 25 jQuery
jQuery dateRangePicker插件使用方法详解
Jul 28 jQuery
jquery+css实现简单的图片轮播效果
Aug 07 jQuery
jQuery UI Draggable + Sortable 结合使用(实例讲解)
Sep 07 jQuery
JavaScript实现离开页面前提示功能【附jQuery实现方法】
Sep 26 jQuery
jQuery利用FormData上传文件实现批量上传
Dec 04 jQuery
JQuery+Bootstrap 自定义全屏Loading插件的示例demo
Jul 03 jQuery
jquery图片预览插件实现方法详解
Jul 18 jQuery
jQuery实现小火箭返回顶部特效
Feb 03 jQuery
jquery+css3实现的经典弹出层效果示例
May 16 jQuery
jQuery实现移动端笔触canvas电子签名
May 21 jQuery
Jquery ajax书写方法代码实例解析
Jun 12 jQuery
jquery实现放大镜简洁代码(推荐)
Jun 08 #jQuery
jQuery+ajax实现局部刷新的两种方法
Jun 08 #jQuery
jQuery 添加样式属性的优先级别方法(推荐)
Jun 08 #jQuery
jquery dataTable 后台加载数据并分页实例代码
Jun 07 #jQuery
jQuery用户头像裁剪插件cropbox.js使用详解
Jun 07 #jQuery
JQueryMiniUI按照时间进行查询的实现方法
Jun 07 #jQuery
jquery仿京东商品放大浏览页面
Jun 06 #jQuery
You might like
PHP 定界符 使用技巧
2009/06/14 PHP
php使用curl代理实现抓取数据的方法
2017/02/03 PHP
PHP堆栈调试操作简单示例
2018/06/15 PHP
javascript面向对象的方式实现的弹出层效果代码
2010/01/28 Javascript
悄悄用脚本检查你访问过哪些网站的代码
2010/12/04 Javascript
将HTMLCollection/NodeList/伪数组转换成数组的实现方法
2011/06/20 Javascript
JS简单实现文件上传实例代码(无需插件)
2013/11/15 Javascript
JavaScript让Textarea支持tab按键的方法
2015/06/26 Javascript
JS实现标签页切换效果
2017/05/04 Javascript
Vue.js中组件中的slot实例详解
2017/07/17 Javascript
vue实现登陆登出的实现示例
2017/09/15 Javascript
JS实现的抛物线运动效果示例
2018/01/30 Javascript
vue实现动态列表点击各行换色的方法
2018/09/13 Javascript
Vue axios设置访问基础路径方法
2018/09/19 Javascript
js实现倒计时器自定义时间和暂停
2019/02/25 Javascript
vuex管理状态仓库使用详解
2020/07/29 Javascript
jquery实现抽奖功能
2020/10/22 jQuery
vue实现图书管理系统
2020/12/29 Vue.js
[01:38]DOTA2第二届亚洲邀请赛中国区预选赛出线战队晋级之路
2017/01/17 DOTA
python打开网页和暂停实例
2014/09/30 Python
关于python多重赋值的小问题
2019/04/17 Python
django之自定义软删除Model的方法
2019/08/14 Python
Python笔试面试题小结
2019/09/07 Python
Python Django模板之模板过滤器与自定义模板过滤器示例
2019/10/18 Python
wxpython+pymysql实现用户登陆功能
2019/11/19 Python
解决pytorch报错:AssertionError: Invalid device id的问题
2020/01/10 Python
python爬虫中PhantomJS加载页面的实例方法
2020/11/12 Python
博朗(Braun)俄罗斯官方商店:德国小家电品牌
2019/09/24 全球购物
Java如何读取CLOB字段
2013/10/10 面试题
毕业生简单求职信
2013/11/19 职场文书
2014年计算机专业个人自我评价
2014/01/19 职场文书
健康状况证明书
2014/11/26 职场文书
诺贝尔奖获得者名言100句:句句启人心智,值永久收藏
2019/08/09 职场文书
请求模块urllib之PYTHON爬虫的基本使用
2022/04/08 Python
古见同学有交流障碍症 第二季宣传CM公开播出
2022/04/11 日漫
MySQL GTID复制的具体使用
2022/05/20 MySQL