0

フィールドセットのタイトルを動的に設定したいと思います。1 つまたは複数のフィールドセットを持つフォームがあります。フィールドセットのタイトルに、3 の 1、3 の 2、3 の 3 の順に番号を付けたいと思います。たとえば、フォーム コントローラーのコードを次に示します。

var formView = this.getFormView(),
fieldsets = formView.down('fieldset');

for (var i = 0, len = fieldsets.length; i < len; i++) {
    fieldsets[i].setTitle((i + 1) + ' of ' + len)
}

フォーム パネル formView.getItems() のアイテムを取得し、その方法でフィールドセットを見つけることを考えていましたが、フィールドセットを取得してタイトルを動的に設定する簡単な方法があると確信しています。

4

1 に答える 1

0

私はあなたの問題に取り組みました。「View.js」のコーディングを提供していないため、独自のビュー「demo.js」を作成しました。

 Ext.define("Stackoverflow.view.Demo", {
 extend: "Ext.form.Panel",
 config: {
    scrollable: 'vertical',
    items: [
        {
            xtype: "toolbar",
            docked: "top",
            title: "Set Title Dynamically ",
            items: [
                {
                    xtype: "button",
                    ui: "action",
                    text: "Set Title",
                    itemId: "settitle"
                }
            ]
        },

        { xtype: "fieldset",
          id: 'field1',
          title: 'oldtitle',
            items: [
                {
                    xtype: 'textfield',
                    name: 'name',
                    label: 'Name'
                }

            ]
        }

    ],
    listeners: [
        {
            delegate: "#settitle",
            event: "tap",
            fn: "onSetTitle"
        },
    ]
},

onSetTitle: function () {
   console.log("title");
   var z=Ext.getCmp('field1');
   z.setTitle('newtitle');
}

});

これはあなたを助けるかもしれません。
ご不明な点がございましたら、お気軽にお問い合わせください。
さよなら。

于 2012-09-15T14:06:15.170 に答える