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 相关文章推荐
JS与jQuery实现子窗口获取父窗口元素值的方法
Apr 17 jQuery
jQuery Validate 无法验证 chosen-select元素的解决方法
May 17 jQuery
jQuery UI 实例讲解 - 日期选择器(Datepicker)
Sep 18 jQuery
jQuery实现获取table中鼠标click点击位置行号与列号的方法
Oct 09 jQuery
jQuery动态添加元素无法触发绑定事件的解决方法分析
Jan 02 jQuery
jQuery中图片展示插件highslide.js的简单dom
Apr 22 jQuery
jquery的$().each和$.each的区别
Jan 18 jQuery
通过jQuery学习js类型判断的技巧
May 27 jQuery
jQuery实现可编辑的表格
Dec 11 jQuery
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
Feb 04 jQuery
如何在vue 中引入使用jquery
Nov 10 jQuery
Jquery+javascript实现支付网页数字键盘
Dec 21 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
免费的ip数据库淘宝IP地址库简介和PHP调用实例
2014/04/08 PHP
php中使用session防止用户非法登录后台的方法
2015/01/27 PHP
Windows下Apache + PHP SESSION丢失的解决过程全纪录
2015/04/07 PHP
Laravel5.1数据库连接、创建数据库、创建model及创建控制器的方法
2016/03/29 PHP
PHP进行批量任务处理不超时的解决方法
2016/07/11 PHP
Lumen timezone 时区设置方法(慢了8个小时)
2018/01/20 PHP
jQuery 相关控件的事件操作分解
2009/08/03 Javascript
JavaScript和JQuery实用代码片段(一)
2010/04/07 Javascript
jQuery 开发者应该注意的9个错误
2012/05/03 Javascript
Js如何判断客户端是PC还是手持设备简单分析
2012/11/22 Javascript
javascript中createElement的两种创建方式
2015/05/14 Javascript
js实现数组冒泡排序、快速排序原理
2016/03/08 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
AngularJs expression详解及简单示例
2016/09/01 Javascript
Vue.extend构造器的详解
2017/07/17 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
JS+H5 Canvas实现时钟效果
2018/07/20 Javascript
JS实现点击li标签弹出对应的索引功能【案例】
2019/02/18 Javascript
微信小程序保存多张图片的实现方法
2019/03/05 Javascript
[02:11]2016国际邀请赛中国区预选赛全程回顾
2016/07/01 DOTA
python中使用smtplib和email模块发送邮件实例
2014/04/22 Python
Python实现备份文件实例
2014/09/16 Python
Python生成不重复随机值的方法
2015/05/11 Python
详解python做UI界面的方法
2019/02/27 Python
如何使用python爬虫爬取要登陆的网站
2019/07/12 Python
python 函数中的参数类型
2020/02/11 Python
keras的backend 设置 tensorflow,theano操作
2020/06/30 Python
Python实现GIF图倒放
2020/07/16 Python
html5教程实现Photoshop渐变色效果
2013/12/04 HTML / CSS
VICHY薇姿英国官网:全球专业敏感肌护肤领先品牌
2017/07/04 全球购物
Speedo速比涛中国官方网站:全球领先泳装运动品牌
2018/04/24 全球购物
乐观大学生的自我评价
2014/01/10 职场文书
初中政教处工作总结
2015/08/12 职场文书
2016春季幼儿园开学寄语
2015/12/03 职场文书
css3实现背景图片颜色修改的多种方式
2021/04/13 HTML / CSS
Vue Element UI自定义描述列表组件
2021/05/18 Vue.js