后台传参与select-option标签的默认选中

从后台传递过来的参数是数据的详情页,在编辑页的select下拉框汇总既要显示所有的选项,又要默认显示选中项,后台传递过来的value值与option的value值相同时就默认选中(即给option标签添加selected=”selected”属性)。

编辑页-效果图:
这里写图片描述

代码如下:

<div class="form-group"><label class="col-sm-2 control-label"><font color="red">* </font>主类 名称 </label><div class="col-sm-4"><select name="main_id" id="main_id" class="text input-large form-control"><option value=""></option></select></div><label class="col-sm-2 control-label"><font color="red">* </font>亚类 名称 </label><div class="col-sm-4"><select name="next_id" id="next_id" class="text input-large form-control"><option value="">请选择亚类</option></select></div></div><div class="form-group"><label class="col-sm-2 control-label"><font color="red">* </font>基本类名称</label><div class="col-sm-4"><select name="basic_id" id="basic_id" class="text input-large form-control"><option value="">请选择基本类</option></select></div><label class="col-sm-2 control-label"><font color="red">* </font>基本类代码</label><div class="col-sm-4"><input name="basic_code" value="" id="basic_code" autocomplete="off" class="text input-large form-control" placeholder="类代码根据国际自动生成" type="text" readonly="readonly"></div><input type="hidden" value="{$main_list['id']}" id="main_id2" /><!--主类--><input type="hidden" value="{$next_list['id']}" id="next_id2" /><!--亚类--><input type="hidden" value="{$basic_list['id']}" id="basic_id2" /><!--基本类-->
<script type="text/javascript">
//获取主类、亚类、基本类和基本类代码
//页面加载完毕后ajax向后台传参
$(function(){$.ajax({type:'post',url:"{:U('Tour/main_data')}",dataType:"json",data:{pid:0},success:function(data){// console.log(data);$("#main_id").empty();$("#main_id").append("<option value=''>请选择主类</option>");for(var i=0;i<data.length;i++){$("#main_id").append('<option value='+data[i].id+'>'+data[i].class_name+'</option>');}//遍历option,找到与后台参数相同的value值,并添加selected属性var main_id2 = $('#main_id2').val();var length= $('#main_id option').length;for(var a=0;a<length;a++){var option_main = $('#main_id option').eq(a).val();if(main_id2 == option_main){$('#main_id option').eq(a).attr('selected','selected');}}//判断主类并获取亚类数据var main_id = $("#main_id").val();if(main_id != ''){$.ajax({type:"POST",url:"{:U('Tour/next_data')}",dataType:"json",data:{main_id:main_id},success:function(data){// console.log(data);$("#next_id").empty();$("#next_id").append("<option value=''>请选择亚类</option>");for(var i=0;i<data.length;i++){$("#next_id").append('<option value='+data[i].id+'>'+data[i].class_name+'</option>');}//遍历option,找到与后台参数相同的value值,并添加selected属性var next_id2 = $('#next_id2').val();var length2 = $('#next_id option').length;for(var b=0;b<length2;b++){var option_next = $('#next_id option').eq(b).val();if(next_id2 == option_next){$('#next_id option').eq(b).attr('selected','selected');}}//判断亚类并获取基本类数据var next_id = $("#next_id").val();// console.log(next_id);if(next_id != ''){$.ajax({type:"POST",url:"{:U('Tour/basic_data')}",dataType:"json",data:{next_id:next_id},success:function(data){// console.log(data);$("#basic_id").empty();$("#basic_id").append("<option value=''>请选择基本类</option>");for(var i=0;i<data.length;i++){$("#basic_id").append('<option value='+data[i].id+' code='+data[i].basic_code+' >'+data[i].class_name+'</option>');}//遍历option,找到与后台参数相同的value值,并添加selected属性var basic_id2 = $('#basic_id2').val();var length3 = $('#basic_id option').length;for(var c=0;c<length3;c++){var option_basic = $('#basic_id option').eq(c).val();if(basic_id2 == option_basic){$('#basic_id option').eq(c).attr('selected','selected');$("#basic_code").val($("#basic_id").find("option:selected").attr("code"));}}//失去焦点后,获取value值并进行下一步操作$("#basic_id").on("change",function(){$("#basic_code").val($("#basic_id").find("option:selected").attr("code"));})}});}else{$("#basic_id").empty();$("#basic_id").append("<option value=''>请选择基本类</option>");$("#basic_code").val('');}}});}else{$("#next_id").empty();$("#next_id").append("<option value=''>请选择亚类</option>");$("#basic_id").empty();$("#basic_id").append("<option value=''>请选择基本类</option>");$("#basic_code").val('');}}});
//主类select框失去焦点后
$("#main_id").on("change",function(){var main_id = $("#main_id").val();if(main_id != ''){$.ajax({type:"POST",url:"{:U('Tour/next_data')}",dataType:"json",data:{main_id:main_id},success:function(data){// console.log(data);$("#next_id").empty();$("#next_id").append("<option value=''>请选择亚类</option>");for(var i=0;i<data.length;i++){$("#next_id").append('<option value='+data[i].id+'>'+data[i].class_name+'</option>');}}});}else{$("#next_id").empty();$("#next_id").append("<option value=''>请选择亚类</option>");$("#basic_id").empty();$("#basic_id").append("<option value=''>请选择基本类</option>");$("#basic_code").val('');}
})
//亚类select框失去焦点后
$("#next_id").on("change",function(){var next_id = $("#next_id").val();// console.log(next_id);if(next_id != ''){$.ajax({type:"POST",url:"{:U('Tour/basic_data')}",dataType:"json",data:{next_id:next_id},success:function(data){// console.log(data);$("#basic_id").empty();$("#basic_id").append("<option value=''>请选择基本类</option>");for(var i=0;i<data.length;i++){$("#basic_id").append('<option value='+data[i].id+' code='+data[i].basic_code+' >'+data[i].class_name+'</option>');}}});}else{$("#basic_id").empty();$("#basic_id").append("<option value=''>请选择基本类</option>");$("#basic_code").val('');}
})
//基本类select框失去焦点后
$("#basic_id").on("change",function(){$("#basic_code").val($("#basic_id").find("option:selected").attr("code"));
})
</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/569942.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jQuery教程08-属性筛选选择器

jQuery选择器之属性筛选选择器 属性选择器让你可以基于属性来定位一个元素。可以只指定该元素的某个属性&#xff0c;这样所有使用该属性而不管它的值&#xff0c;这个元素都将被定位&#xff0c;也可以更加明确并定位在这些属性上使用特定值的元素&#xff0c;这就是属性选择…

有关Canvas的一点小事—图像绘制

1、 使用canvas绘制图像 什么是图像&#xff1f;在js中它就是一个<img src””>&#xff0c;<img>有两种接收图像信息的方法&#xff0c;一个是直接链接到图像地址&#xff0c;一个使用base64数据&#xff0c;不过这里讨论的是canvas要使用的Image对象。我们有两个…

jQuery教程09-子元素筛选选择器

jQuery选择器之子元素筛选选择器 子元素筛选选择器不常使用&#xff0c;其筛选规则比起其它的选择器稍微要复杂点 子元素筛选选择器描述表&#xff1a; 注意&#xff1a; :first只匹配一个单独的元素&#xff0c;但是:first-child选择器可以匹配多个&#xff1a;即为每个父…

关于ppt中嵌入echarts图表

1.首先需要PPT2013版本以上带有开发工具&#xff0c;能够添加microsoft web browser控件 2.将echarts图表的html代码中加载 <meta http-equiv"X-UA-Compatible" content"IEEmulateIE*"/>代码&#xff08;*处至少为9或以上&#xff09;&#xff0c;将…

jQuery教程10-表单元素选择器

无论是提交还是传递数据&#xff0c;表单元素在动态交互页面的作用是非常重要的。jQuery中专门加入了表单选择器&#xff0c;从而能够极其方便地获取到某个类型的表单元素。 表单选择器的具体方法描述&#xff1a; 注意&#xff1a; 除了input筛选选择器&#xff0c;几乎每…

在windows系统和linux系统中查询IP地址命令的不同

在linux和windows系统上查询IP地址的命令是不一样的。 在linux中的命令行模式下&#xff0c;输入ifconfig即可查询到IP。而在windows系统下要查询IP地址需要先打开dos命令行&#xff0c;然后输入ipconfig。回车即可。 注意&#xff0c;两个命令时不一样的&am…

JavaScript实现复选框的全选/全不选和批量选择

实现数据的批量选择以及全选/全部选功能的效果如下所示&#xff1a; 代码如下&#xff1a; <a class"btn btn-default" id"search_like" style"margin-right: 5px;">搜索</a> <a class"btn btn-success" id"s…

Python魔术世界 1 如何使用Visual Studio在WIN10中一键安装Python3入门编程环境并测试Django...

本文通过VS安装Python和Django的环境&#xff0c;创建了一个Web程序&#xff0c;前后5分钟的操作&#xff0c;让你快速入门Python的编程世界&#xff0c;各种Python和Django的概念会在实战中给你娓娓道来。 Django其实就是使用Python写的网站生成器半成品网站。其提供了一些非常…

win10 无法连接路由器共享设备 报错0X80004005

用路由器挂了个硬盘&#xff0c;win10无法用文件夹访问&#xff0c;试了各种方法都没用&#xff0c;后来才发现是windows的‘SMB 1.0/CIFS 文件共享支持’未开启&#xff0c;启用后重启电脑就可以了。 具体步骤&#xff1a; 控制面板 - 程序和功能 - 启用或关闭Windows功能 打勾…

PhpWord的autoload.php文件及目录的生成方式

在github上下载的压缩版PhpWord类库&#xff0c;bootstrap需要用到wendor下的autoload.php&#xff0c;但发现目录里面没有该文件。百度一下&#xff0c;发现需要通过composer进行生成该目录及文件。 1、安装composer 我是在windows系统下办公的&#xff0c;所以直接下载comp…

新版的sublime text 3无法设为默认启动程序

安装上新版的sublime text 3之后&#xff0c;打算设为.html .css .js等文件的默认启动程序&#xff0c;却发现无法设置成功&#xff0c;于是百度上搜索了一下&#xff0c;发现很多都是去注册表修改配置。却始终不能如愿。 有的解决方法是&#xff1a;删除 HKEY_CURRENT…

关于ajax请求后台获取下拉列表用的数据

一、效果展示 有时候需要在页面请求后台获取数据&#xff1a;这里就用到了ajax去后台获取数据&#xff1a; 数据库的数据是这样的&#xff1a; mysql> select * from ocenter_travel_class_info where pid 0; -------------------------------------- | id | pid | c…

jSignature网页手写签名

一、效果图 注意&#xff1a;1、CSS样式自己调&#xff0c;这里写的很简陋。      2、单击下载&#xff0c;并不是下载图片&#xff0c;而是保存到后台。      3、注意js的引用。 二、前端 <!DOCTYPE html> <html lang"zh-CN"> <head>…

postman上传图片时已经添加cookie,但仍显示未登陆

postman上传图片时&#xff0c;已经添加过cookie&#xff0c;但是返回的结果是用户未登陆&#xff0c;如下图所示&#xff1a; 我的解决办法是&#xff1a;清楚cookie code中的cookie 最终的结果如下&#xff1a;成功 转载于:https://www.cnblogs.com/1510152012huang/p/102825…

关于Oracle数据库导入数据显示中文乱码

一、遇到的问题 问题一&#xff1a;某xxxx.sql文件&#xff0c;里面都是insert语句&#xff0c;并且文本编辑器打开文件查看&#xff0c;里面待插入的中文数据显示正常&#xff0c;但是通过命令行&#xff0c;使用“xxxx.sql”导入数据库后&#xff0c;发现数据库中的中文数据都…

MySQL日期与时间函数

MySQL日期与时间函数 MySQL服务器中的三种时区设置&#xff1a;   ①系统时区—保存在系统变量system_time_zone   ②服务器时区—保存在全局系统变量global.time_zone   ③每个客户端连接的时区—保存在会话变量session.time_zone 注意&#xff1a;   客户端时区…

Docker:单机编排工具docker-compose [十二]

一、docker-compose的安装 1、安装 curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo yum install -y python2-pip pip install -i https://pypi.tuna.tsinghua.edu.cn/simple docker-compose2、检查是否安装成功 docker-compose -v 二、docke…

HTML DOM文档对象查找元素的方法

一、HTML DOM 节点 在 HTML DOM (Document Object Model) 中 , 每一个元素都是 节点: 文档是一个文档节点。所有的HTML元素都是元素节点。所有 HTML 属性都是属性节点。文本插入到 HTML 元素是文本节点。注释是注释节点。 二、Document 对象 当浏览器载入 HTML 文档, 它就会…

快速排序(C语言)

快速排序 快速排序是一种不稳定排序&#xff0c;它的时间复杂度为O(nlgn)&#xff0c;最坏情况为O(n2)&#xff1b;空间复杂度为O(nlgn)。 这种排序方式是对于冒泡排序的一种改进&#xff0c;它采用分治模式&#xff0c;将一趟排序的数据分割成独立的两部分&#xff0c;其中一…

Apache配置多个监听端口和访问网站的方法

一个apache服务器的vhost.conf配置文件可以设置Apache监听多个端口&#xff0c;打开Apache的配置文件httpd.conf&#xff0c;在 Listen 80 下面添加多个监听端口如&#xff1a; Listen 8010 Listen 8020 Listen 8030 这样就在vhosts.conf配置文件中增加了8010、8020和8030端…