1

必要な従属コンボボックスがあります。親コンボボックスの値を選択すると、依存コンボがクリアされ、ストアがリロードされます。リロード中にExtJs検証エラーが表示されないようにするにはどうすればよいですか?

            new Ext.form.ComboBox({
                id: 'ddlMake',
                store: makeStore,
                displayField: 'Description',
                valueField: 'TypeCode',
                width: 110,
                typeAhead: true,
                mode: 'local',
                forceSelection: true,
                triggerAction: 'all',
                emptyText: 'Select a make',
                selectOnFocus: true,
                allowBlank: false,
                listeners:
                    {
                        select: function (combo, record, index) {
                            var selVal = Ext.getCmp('ddlMake').getValue();
                            var modelCombo = Ext.getCmp('ddlModel');
                            modelCombo.setValue('');
                            modelCombo.store.reload({
                                params: { categoryTypeCode: 'MODEL', subCategoryTypeCode: selVal }
                            });
                        }
                    }
            }),
            new Ext.form.ComboBox({
                id: 'ddlModel',
                store: modelStore,
                displayField: 'Description',
                valueField: 'TypeCode',
                width: 110,
                typeAhead: true,
                mode: 'local',
                forceSelection: true,
                triggerAction: 'all',
                emptyText: 'Select a model',
                selectOnFocus: true,
                allowBlank: false
            }),
4

2 に答える 2

3

Reset() メソッドは、すべての検証メッセージをクリアします。これが私が最終的に使用したものです:

function LoadModelCombo(combo, record, index) {
    var selVal = Ext.getCmp('ddlMake').getValue();

    if (selVal != '') {
        var modelCombo = Ext.getCmp('ddlModel');
        modelCombo.setValue('');
        modelCombo.store.reload({
            params: { categoryTypeCode: 'MODEL', subCategoryTypeCode: selVal }
        });
        modelCombo.reset();
    }
}
于 2012-06-08T18:39:46.193 に答える
1

正確なコードはありませんが、他のリスナーを黙らせる方法があります - stopEvent と stopPropogation のドキュメントを参照してください。

于 2012-06-05T21:47:05.387 に答える