Extjs_extjs の DisplayField の日付または数値の書式設定拡張機能

WBOY
リリース: 2016-05-16 18:20:10
オリジナル
1040 人が閲覧しました
Ext.form.FormPanel を使用してデータを処理する場合、一部のフィールドは読み取り専用である必要があります。もちろん、Ext.form.TextField を使用して ReadOnly に設定することもできますが、常に入力ボックスが存在するため、表示効果はあまり良くありません。したがって、Ext.form.DisplayField を使用する必要がありますが、Ext.form.DisplayField には形式属性がなく、日付フィールド
などのレンダラー イベントもありません。
var form = new Ext.form.FormPanel({
frame: true,
renderTo: 'form-div',
items: [{
xtype: '表示フィールド'、
フィールドラベル: '日付'、
値: new Date()
}]
});
少し間違って表示されます

次に、フォーマット属性

Ext.override(Ext.form.DisplayField, {
  getValue: function () {
    return this.value;
  },
  setValue: function (v) {
    this.value = v;
    this.setRawValue(this.formatValue(v));
    return this;
  },
  formatValue: function (v) {
    if (this.dateFormat && Ext.isDate(v)) {
      return v.dateFormat(this.dateFormat);
    }
    if (this.numberFormat && typeof v == 'number') {
      return Ext.util.Format.number(v, this.numberFormat);
    }
    return v;
  }
});
ログイン後にコピー
をサポートするように Ext.form.DisplayField を書き換えます。
Ext.form.DisplayField に dateFormat とnumberFormat の 2 つの属性を追加し、上記の FormPanel を変更しました

var form = new Ext.form.FormPanel({

フレーム: true、

renderTo: 'form-div',

アイテム: [{

xtype: '表示フィールド'、

フィールドラベル: '日付'、

値: new Date()、

dateFormat: 'm/d Y'

}]

});

かなり完璧なはずです、ハハハ

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!