ie select 下拉框自动收缩、需要点击两次才能展开,默认option不可选

问题描述:

开发一个需求,在select下要求点击进来就将期中的某一项option不可选,主义是在onchange事件触发前,开始考虑用到onclick、onfocus这两个事件,在其他浏览器都是没问题的,可以直接 $ (‘select ‘).children(‘option[value="’+val+’"]’).prop(‘disabled’,true),都是没有问题的,但是ie下有问题,查询得知ie8及以前的版本,option不支持 disabled 属性(我的ie11),但是我的ie也有问题。

  1. 问题一:onclick()事件,会造成下拉框点击后,迅速收缩,再次点击还是会收缩
  2. 问题二:onfocus()事件,会造成下拉框需要点击两次才能正常显示。

解决方案:

各种尝试都是在这两个方法上,没有结果。最后更换**onmouseover()**事件,当鼠标以上select就触发事件,利用 $ (‘select ‘).children(‘option[value="’+val+’"]’).prop(‘disabled’,true),这样再次点击就能正常打开select框,并且打开时也对相应的option做了不可选操作

上一篇:红帽linux网络课程学习贴 - 14


下一篇:前端踩坑