select框禁用后 表单提交无法获取值

业务需要 给select框赋值并禁用 但是在表单提交时获取不到这个字段和值

解决方法:获取表单数据前取消select框禁用

 $("#productMethod").attr('disabled',false);//解除select框禁用,拿到数据
但是总觉得这样不保险,如果请求失败页面没有跳转,select一开始的禁用就没有意义了
 
找到的三种方法,但是业务需求为动态禁用,最后还是在获取数据时解除禁用

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;">

3.在页面加载之前设置

$(function() {  $('#select').attr("disabled",true); });

提交表单前设置

$('#select').attr("disabled",false);

posted @ 2020-08-07 12:07  ```天真有邪  阅读(925)  评论(0编辑  收藏  举报