easyui中遇到一个坑(不同条件下控制组件的属性--前后属性之间影响)


easyui中遇到一个坑(不同条件下控制组件的属性–前后属性之间影响):

需求:

在新打开的dialog对话框中根据参数的不同渲染表单, editable 可更新 true 和 不可更新 false


    if((data.retArray).length===0)
    {
      $('#id1').textbox({
        editable: false,
        disable: true,
        readonly: true,
      });
      $('#id2').numberspinner({
        min: 0.00,
        precision: 2,
        increment: 0.01,
        editable: false,
        disable: true,
        readonly: true,
        value: 0.00
      });
      $('#id3').textbox({
        editable: false,
        disable: true,
        readonly: true,
      });
    }
    else
    {
        $('#id1').combobox({
        data: data.retArray,
        required: true,
        valueField: 'id',
        textField: 'value',
        disable: false,
        
        readonly: false,
        editable: false,    // 注意: 这里需要把这两个条件也加上 (否则会受到之前的属性的影响)
        
        value: data.retArray[0].id,
        onSelect: function(out) {
          var settle_id = out.id;
          $.post('/xxxxxxx/', {
                'id': id
              },
              function(data) {
                $("#id4").text(data);
                var value =$('#id6').textbox('getValue');
                var min = value > data ? data : value;
                $('#id5').numberspinner('setValue', min);
              },
              'JSON');
        }
      });
      initFirst(); //首次执行初始化
      
      $('#id2').numberspinner({
        min: 0.00,
        precision: 2,
        increment: 0.01,
        required: true,
        
        editable: true,
      disable: false,
      readonly: false,   //   注意: 这里需要把这两个条件也加上 (否则会受到之前的属性的影响)
      });
      $('#id3').textbox({
        editable: true,
        disable: false,
        readonly: false,   //  注意: 这里需要把这两个条件也加上 (否则会受到之前的属性的影响)
      });
    };
  }

Buy me a 肥仔水!