设置select下拉框为不可修改的几种方法:

因为select的特殊性,导致它不能像input表单一样简单地设置一个readonly来限制修改,所以,我们需要进行别的操作!

1、为下拉框添加样式,可以禁用该下拉框(效果和敲地板差不多)
<select name="name" id="select" class="select" style="pointer-events: none;"></select>
2、为下拉框添加onfocus和onchange方法,可以禁用该下拉框(点击出来全部,但其他的就是不能选,诶~)
<select name="name" id="select" class="select" οnfοcus="this.defaultIndex=this.selectedIndex;" οnchange="this.selectedIndex=this.defaultIndex;">
或者在js中
          var sel= document.getElementById('mySelect');sel.onchange=function(){this.selectedIndex=this.defaultIndex;};sel.onfocus=function(){this.defaultIndex=this.selectedIndex;};
3、可以在页面加载之前设置,将select设置为disabled,需要注意:disabled属性会使得值无法传递,所以需要在提交前取消disabled。(我虚了,你呢?)
$(function() {  $('#select').attr("disabled",true); });
或者
var sel= document.getElementById('mySelect');
sel.disabled="true";

需提交表单前设置

$('#select').attr("disabled",false);
或者
var sel= document.getElementById('mySelect');
sel.disabled="false";
4、使用js使select无法修改(实现方式是通过js把其他的选项一个一个清除)如下:(成功路上无对手!)
//获取select对象
var iElement= document.getElementById('mySelect');
//新建一个下拉框数组
var optionTags = new Array();
var index = 0;
var optionObj;
//拿到目前select应该展示的元素value
var elementValue = iElement.value;
var tag;
//拿到当前所有的option 放在options(数组)中
var options = iElement.options;
if(options.length>1){for(var j = options.length-1; j >= 0; j--){tag = new Array();optionObj=options[j];tag["value"] = optionObj.value;tag["text"]  = optionObj.text;optionTags[index++] = tag;//如果该元素不是当前展示的元素,则将该元素移除if(tag["value"] != elementValue){iElement.remove(j);}}
}
//最后的select只剩一个元素,也就达到了效果
以上,希望能够帮到你!

设置select下拉框不可修改的→“四”←种方法相关推荐

  1. Layui实现动态生成select中的option项,同时设置select下拉框选中项

    项目场景: 主要用于为民族select下拉框动态生成option值,同时在实现编辑功能时,表单中的select下拉框的选中项为后台传过来的数据. 举例: 如下图所示的表单内容,下图的民族和政治面貌se ...

  2. html select不允许选择,设置select下拉框不能选择

    今天在做一个小功能的时候,需要对特定的一个select设置禁止选择,只好采用js进行控制,接下来吾爱编程为大家介绍一下设置select下拉框不能选择的方法,有需要的小伙伴可以参考一下: 1.功能需求: ...

  3. HTML如何设置select下拉框的默认值?

    本篇文章给大家介绍设置select下拉框默认值的方式.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 我们可以在所需选项上使用"selected"属性来设置sel ...

  4. 下拉框的高度html,设置select下拉框高度的一种方法

    这种方法可以设置下拉框最多显示几条栏目,多余的栏目用显示滚动条展示: 文学集 哲学 雅思 大学网奥数大学网奥数 文学集 哲学 雅思 大学网奥数 Layui:设置select下拉框自动选中某项 1.问题 ...

  5. bootstrap select下拉框模糊搜索和动态绑定数据解决方法

    bootstrap select下拉框模糊搜索和动态绑定数据解决方法 参考文章: (1)bootstrap select下拉框模糊搜索和动态绑定数据解决方法 (2)https://www.cnblog ...

  6. html 下拉框高度,如何自定义设置select下拉框高度的优化方法

    在项目开发中经常会遇到select下拉框优化问题,默认的样式简直难看到死,所以大家都会想到去设置select高度问题,当然一些组件或者插件也可以实现对其完美优化,我之前的一篇文章也写到了相关优化方法& ...

  7. jq设置select下拉框默认选中

    以下#sel为select的id 单选框: 一:通过value值设置默认选中 方法一: $("#sel").val('xx');//设置value为xx的option选项为默认选中 ...

  8. jquery 获取和设置 select下拉框的值(转手册)

    ##实例应用中遇到的问题 //在某事件响应的应用中设置select选中项,前两种情况的设置不生效,使用了最后一种用法才生效的 //$("#select_time").find(&q ...

  9. jquery 获取和设置 select下拉框的值

    获取Select : 获取select 选中的 text : $("#ddlRegType").find("option:selected").text(); ...

最新文章

  1. SQL Server 数据库清除日志的方法
  2. 网络编程--ftp客户端的实现(c#版)
  3. linux lftp lftpget 命令简介
  4. Vue 脚手架CLI 初始化项目
  5. STM32系统学习——DMA(直接储存器访问)
  6. Activiti实战. 1.5Activiti架构与组件
  7. CTO 比普通程序员强在哪?
  8. Navicat 提示 Access violation at address ***(771B7870) in module ‘ntdll.dll’. Read of address ***(220A
  9. [唐胡璐]VBS技巧 - Adding Quotes(为字符串加双引号)
  10. 菜鸟涂鸦作品展_No.1
  11. 27个澳洲年轻人,重演了少年马云的一段奇遇
  12. C# 微信服务号模板消息中如何换行
  13. 51NOD-1090-3个数和为0
  14. 详细且通俗讲解轻量级神经网络——MobileNets【V1、V2、V3】
  15. 用计算机解决质数猜想,天才数学家又出成果!他解决了困扰数学界80年的猜想,连陶哲轩都夸他厉害!...
  16. mysql导出数据库1146_MySQL复制出错 Last_SQL_Errno:1146的解决方法
  17. 商品期货基本面研究纲要
  18. coreldraw x4离线激活_coreldraw x4怎么激活 coreldraw x4注册机使用方法
  19. Java_计算机基础知识
  20. UML一篇文章就学通!

热门文章

  1. MyBatis的插入后获得主键的方式
  2. .net连接mysql数据_.net连接MYSQL数据库的方法及示例!
  3. 寻找一个字符串的重复子串 后缀数组
  4. Mysql创建数据库用户
  5. 奇异值分解 SVD 的数学解释
  6. 科技公司合作伙伴清单
  7. CVPR2020:三维点云无监督表示学习的全局局部双向推理
  8. 单目摄像头标定与测距
  9. 深度学习在计算机视觉中的应用长篇综述
  10. Python:Resquest模块