工作中遇到的问题,折腾了好久:

如下图:

需求:当状态发生改变后,如果状态是未核实 ,  核实人 核实时间 核实结果 核实说明  均为不可编辑状态

具体js代码如下:

//状态改变
    $('#jsStatus').combobox({   
       onSelect: function(r){
          if("dhs"==r.value){
              $('#jsPersonNo').val("");
              $('#jsPersonNo').attr("disabled",true);
              $('#jsVerifyDate').datebox("setValue","");
              $('#jsVerifyDate').datebox({disabled:true});
             $('#jsResult').combobox("setValue","");
             $('#jsResult').combobox({disabled:true});
            $('#jsVerifyRemark').val("");
            $('#jsVerifyRemark').prop('readonly',true);
           }
         if("yhs"==r.value){
            $('#jsPersonNo').attr("disabled",false);
            $("#jsVerifyDate").datebox({disabled:false});
            $('#jsResult').combobox({disabled:false});
            $('#jsVerifyRemark').prop('readonly',false);
          }
       }
    });

但是发现出现了如下问题:   当状态改变为 已审核(yhs)  时,  databox 日期的 disabled 属性修改为false,可编辑失效(具体原因尚不明确),代码为上面红色部分  页面效果如下图:

发现核实时间依然为不可编辑......

经过尝试,发现移除disabled属性可以解决问题,于是将JS中红色部分代码修改如下:

$('#jsVerifyDate').removeAttr("disabled");

修改之后功能问题是解决了,但是外观问题又来了,看下图:

日期控件是出来了,也可编辑,但是文本框还是灰色,而且日期控件的图标也没了,没办法,只有想办法继续改.........

百度了很多资料,没有找到相关的解决方案........,最后只有自己试了

分析页面发现,在修改为不可编辑状态时,EasyUI给改元素增加了一些属性,如下图(红色框框住的部分为easyUI添加的 class):

对EasyUI 添加的class进行一下说明:

Wdate:  用于控制显示日期图标的样式 class

disabled:  控制文本框为不可编辑时的样式class ,如果为不可编辑,easyUI会添加此样式将文本框会变为灰色

现在,我只要将控制文本框为灰色的这个样式移除就好了:

在JS里添加如下代码:

$('#jsVerifyDate').removeClass("disabled");     //移除disabled的样式

最后完整的JS代码如下(红色是与以前代码不同的部分):

//状态改变
    $('#jsStatus').combobox({   
      onSelect : function(r){
       if("dhs"==r.value){
           $('#jsPersonNo').val("");
           $('#jsPersonNo').attr("disabled",true);
           $('#jsVerifyDate').datebox("setValue","");
           $('#jsVerifyDate').datebox({disabled:true});
           $('#jsResult').combobox("setValue","");
           $('#jsResult').combobox({disabled:true});
           $('#jsVerifyRemark').val("");
           $('#jsVerifyRemark').prop('readonly',true);
           }
       if("yhs"==r.value){
           $('#jsPersonNo').attr("disabled",false);
           $('#jsVerifyDate').removeAttr("disabled");   
           $('#jsVerifyDate').removeClass("disabled");
           $('#jsResult').combobox({disabled:false});
           $('#jsVerifyRemark').prop('readonly',false);
          }
       }
    });

至于  $("#jsVerifyDate").datebox({disabled:false}); 失效,个人认为是因为easyUI 设置 datebox  disabled:true  属性的时候添加了部分样式,但是取消 disabled的时候这些样式又没有被删除,所以出现这样的状况

另外这里推荐使用 onSelect 事件,之前使用onChange事件出现了问题,页面加载初始值无法显示,改成onSelect就好了.

EasyUI datebox 设置不可编辑后再次修改为可编辑失效的解决的更多相关文章

  1. ComboBox控件“设置 DataSource 属性后无法修改项集合”的解决【转】

    编写Winform程序,遇到comboBox的绑定事件和索引项变更事件的冲突问题,就是“设置 DataSource 属性后无法修改项集合”的错误问题,网上查了很多,大多说在索引项变更是进行非空判断,还 ...

  2. C# LIstbox 解决WinForm下ListBox控件“设置DataSource属性后无法修改项集合”的问题

    解决WinForm下ListBox控件“设置DataSource属性后无法修改项集合”的问题 分类: winform2008-05-24 02:33 2592人阅读 评论(11) 收藏 举报 winf ...

  3. 解决WinForm下ListBox控件“设置DataSource属性后无法修改项集合”

    解决WinForm下ListBox控件“设置DataSource属性后无法修改项集合” 最近更新: 2013-2-15    587   很少写WinForm程序第一次使用ListBox控件就遇到了比 ...

  4. easyui datebox 设置不可编辑

    easyui datebox不允许编辑可以输入 editable="false"<input class="easyui-datebox" editabl ...

  5. easyui datagrid设置fit: true后,页面显示不全的情况

    跟工具栏有关 <div id="tb"> <div style="float:left;"> <a href="#&qu ...

  6. C#ComboBox控件“设置 DataSource 属性后无法修改项集合”的解决方法

    在使用ComboBox控件时,遇到了重新绑定赋值出问题的情况.正常情况下,对于数据重新赋值的或者绑定数据源的时候,为了防止数据出现问题,都会先清空原来数据,所以就这样写了,但是没有相当恰恰这样写就出现 ...

  7. 黄聪:jquery mobile通过a标签页面跳转后,样式丢失、js失效的解决方法

    问题描述: 用ajax跳转的时候,从a.html跳转到b.html后,b.html的css以及js都失效了. 解决办法1: 将所有的css以及js全部放在div内. 原理: 由于jqm的ajax跳转的 ...

  8. hightcharts在移动端运用 FastClick后苹果上legend点击失效的解决办法

    问题:在移动端做图表运用了hightcharts,引用了fastclick来消除300ms的延迟,但是发现苹果(安卓正常)上hightcharts的legend点击不起作用了,必须长按才行. 使用fa ...

  9. 2python脚本在window编辑后linux不能执行的问题

    参考简书博主天道酬勤abcd python脚本在windows编辑后,在linux下执行提示 /usr/bin/python^M: bad interpreter: No such file or d ...

随机推荐

  1. leetcode [34] Find First and Last Position of Element in Sorted Array

    Given an array of integers nums sorted in ascending order, find the starting and ending position of ...

  2. Golang生成区间随机整数

    package main import ( "fmt" "math/rand" "time" ) func main() { rand.Se ...

  3. css列表list、表格table

    列表list,无序列表ul,有序列表ol 1.列表项样式list-style-type 无列表默认为dist实心圆,有序列表默认为decimal阿拉伯数字(前面不带0) 其他无序列表常用none无样式 ...

  4. P3157 [CQOI2011]动态逆序对(树状数组套线段树)

    P3157 [CQOI2011]动态逆序对 树状数组套线段树 静态逆序对咋做?树状数组(别管归并QWQ) 然鹅动态的咋做? 我们考虑每次删除一个元素. 减去的就是与这个元素有关的逆序对数,介个可以预处 ...

  5. LVS+Keepalived+Mysql+主备数据库架构[4台]

    这是一个坑...磨了不少时间.见证自己功力有待提升... 架构图 数据库 1.安装数据库 这块不难, 直接引用:mysql安装 2.数据库主备 这块不难, 直接引用: mysql主备 虚拟VIP 重点 ...

  6. 【Python025-字典】

    一.字典 1.创建和访问字典(字典是大括号表示,字典是映射类型) 语法类型:键:key,值:value,用冒号隔开 --- >>> dict1 = {'李宁':'一切皆有可能','耐 ...

  7. topcoder srm 370 div1

    problem1 link 枚举每一种大于等于$n$的计算其概率即可. problem2 link 首先二分答案,然后计算.令$f[i][j]$表示移动完前$i$最后一个在位置$j$的最小代价. pr ...

  8. Bootstrap3基础 input-group glyphicon 输入框组与glyphicon图标

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  9. 第三章 Web页面建设

    认识<q>元素: 简短的引用. 问:你去掉了双引号,换成了一个<q>元素,只是为了显示双引号?这样不是更复杂了吗? 答:不.在增加<q>元素之前,浏览器只知道这是一 ...

  10. Restful framework【第五篇】解析器

    基本使用 -解析器 -源码从request.data -全局配置 -'DEFAULT_PARSER_CLASSES':['rest_framework.parsers.JSONParser'], -局 ...