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 相关文章推荐
浅谈struts1 &amp; jquery form 文件异步上传
May 25 jQuery
Angular2使用jQuery的方法教程
May 28 jQuery
浅谈jQuery框架Ajax常用选项
Jul 08 jQuery
基于JQuery的Ajax方法使用详解
Aug 16 jQuery
jQuery 利用ztree实现树形表格的实例代码
Sep 27 jQuery
基于jQuery实现定位导航位置效果
Nov 15 jQuery
jQuery实现模糊查询的方法分析
May 10 jQuery
jQuery插件jsonview展示json数据
May 26 jQuery
jquery UI实现autocomplete在获取焦点时得到显示列表功能示例
Jun 04 jQuery
jQuery-Citys省市区三级菜单联动插件使用详解
Jul 26 jQuery
jQuery AJAX应用实例总结
May 19 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中file_exists函数使用详解
2015/05/08 PHP
Laravel重定向,a链接跳转,控制器跳转示例
2019/10/22 PHP
Google Map API更新实现用户自定义标注坐标
2009/07/29 Javascript
Javascript的匿名函数小结
2009/12/31 Javascript
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
JS中类或对象的定义说明
2014/03/10 Javascript
node.js中的fs.writeFileSync方法使用说明
2014/12/14 Javascript
node.js中的http.get方法使用说明
2014/12/14 Javascript
node.js中的forEach()是同步还是异步呢
2015/01/29 Javascript
vue.js框架实现表单排序和分页效果
2017/08/09 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
javascript实现前端成语点击验证
2020/06/24 Javascript
解决vue单页面多个组件嵌套监听浏览器窗口变化问题
2020/07/30 Javascript
快速解决element的autofocus失效问题
2020/09/08 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
2020/11/20 Javascript
Python简单网络编程示例【客户端与服务端】
2017/05/26 Python
Python常见异常分类与处理方法
2017/06/04 Python
python 获取文件下所有文件或目录os.walk()的实例
2018/04/23 Python
tensorflow 恢复指定层与不同层指定不同学习率的方法
2018/07/26 Python
Python3.5以上版本lxml导入etree报错的解决方案
2019/06/26 Python
浅析PEP570新语法: 只接受位置参数
2019/10/15 Python
Python hashlib常见摘要算法详解
2020/01/13 Python
python如何实现DES加密
2020/09/21 Python
完美解决torch.cuda.is_available()一直返回False的玄学方法
2021/02/06 Python
html5的canvas实现3d雪花飘舞效果
2013/12/27 HTML / CSS
萨克斯第五大道精品百货店: Saks Fifth Avenue
2017/04/28 全球购物
俄罗斯汽车零件和配件在线商店:CarvilleShop
2019/11/29 全球购物
华为消费者德国官方网站:HUAWEI德国
2020/11/03 全球购物
客服主管岗位职责
2013/12/13 职场文书
咖啡馆创业计划书
2014/01/26 职场文书
道德模范先进事迹
2014/02/14 职场文书
2015年生活老师工作总结
2015/05/27 职场文书
毕业实习证明范本
2015/06/16 职场文书
HTML5来实现本地文件读取和写入的实现方法
2021/05/25 HTML / CSS
如何在pycharm中快捷安装pip命令(如pygame)
2021/05/31 Python
vue生命周期钩子函数以及触发时机
2022/04/26 Vue.js