时间:2021-05-26
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; }以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了jQuery+ajax实现动态添加表格trtd功能。分享给大家供大家参考,具体如下:功能:ajax获取后台返回数据给table动态添加tr/tdh
本文实例讲述了jQuery实现表单动态添加数据并提交的方法。分享给大家供大家参考,具体如下:情景1:已经存在form对象了,动态为form增加对象并提交func
需求描述:页面上可以动态添加数据,比如table,点击按钮可以动态添加行。又或页面加载时table数据是通过ajax从后台获取的。而这时我们想要获取其中的某个值
javascript为下拉列表添加数据项.html复制代码代码如下:为下拉列表动态添加数据项functiongel(id){returndocument.get
我用PHP和Ajax结合,添加数据之后,刷新前台页面,数据没有变化。我改动PHP动态脚本,只有重新找开IE再输入地址,才能看到效果。以上这些是不是缓存的原因啊?