2011-04-19 36 views
2

我有我的表格面板上的複選框,ExtJS的複選框SETVALUE根據1和0

而且我在過程中,我需要根據在MySQL數據庫ID編輯數據,其中有一個選項複選框1 =已檢查0 =未檢查,

如何獲取複選框的字段的值,並將其置於條件子句中,並將複選框的值設置爲複選框(如果爲1且未檢查if它返回0?...

回答

0

此問題已解決,

通過使用每場1個複選框,也完全沒有問題!....

的複選框將得到遏制時,分配給它的字段名返回值1,

這就是它!

....

1

如果值是一個字符串,所有檢查都不考慮事件檢查。我創建了一個修復。 Add Before Ext.onReady

 
Ext.override 
(
    Ext.form.Checkbox, 
    { 
     setValue:function(v){ 

      var checked = this.checked, inputVal = this.inputValue; 

      if(v === false) 
      { 
       this.checked = false; 
      } 
      else 
      { 
       this.checked = (v === true || v === 'true' || v == '1' || (v instanceof String) || (inputVal ? v == inputVal : String(v).toLowerCase() == 'on')); 
      } 

      if(this.rendered) 
      { 
       this.el.dom.checked = this.checked; 
       this.el.dom.defaultChecked = this.checked; 
      } 
      if(checked != this.checked) 
      { 
       this.fireEvent('check', this, this.checked); 
       if(this.handler) 
       { 
        this.handler.call(this.scope || this, this, this.checked); 
       } 
      } 
      return this; 
     } 
    } 
); 


{ 
    xtype:'checkbox', 
    fieldLabel:'Caption', 
    labelSeparator:':', 
    boxLabel:'LabelText', 
    name:'status', 
    inputValue:'0' 
} 

inputValue必須是字符串'0'。