1

編集可能なグリッドで extjs 4 を使用してコンボ ボックスを作成しています (extjs 4 を使用しています)。extjs プロキシを使用するのではなく、外部 ajax 呼び出しを使用してデータを入力しています。その理由は、他のコンボを読み込むために同じ呼び出しを使用しているためです。ボックス。だから私は同じ機能を使わない理由を考えました。ストア、モデル、ドロップダウン、および ajax 呼び出しのコードは次のとおりです。

var drpdwnitems = "";

Ext.define('rStatusRecord', {
    extend: 'Ext.data.Model',
    fields: [
        { name: 'code', type: 'string' },
        { name: 'value', type: 'string' }
    ]
});

var dsStatus = Ext.create('Ext.data.Store', { model: 'rStatusRecord', data: [] });

var timeSelectField_1 = {
     xtype: 'combobox',
     typeAhead: true,
     displayField: 'code',
     valueField: 'value',
     store: dsStatus,
     triggerAction: 'all'

};

このフィールドは、基本的にグリッド パネルの列で編集目的で使用されます。AJax 呼び出しは基本的に文字列を返します。

$.ajax({
    type: "GET",
    url: "XHR/Task_TypesCalls.aspx?TL_A=1", 
    error: function() { alert('Error loading document'); },
    success: loadAvailableTasksList
});

function loadAvailableTasksList(contents, status) {
     drpdwnitems = contents.split("!");
     if (status != "success") return;

     var drpdwnitemsind;

     dsStatus.removeAll();
     for (i = 0; i < drpdwnitems.length; i++) {
        drpdwnitemsind = drpdwnitems[i].split(":");
        statusRecord = Ext.create('rStatusRecord', {
          code: drpdwnitemsind[0], //"",
          value: drpdwnitemsind[0]//""
        });

        dsStatus.add(statusRecord);
      } //end of loop
}

フィールドを編集してコンボ ボックスを開くと、

TypeError: url is undefinedというエラーが発生します。
このエラーはファイル ext-all-debug.js にあります

。 . または、私はここで何か間違ったことをしていますか?

4

1 に答える 1

2

参照: http://docs.sencha.com/ext-js/4-1/#!/api/Ext.form.field.ComboBox-cfg-queryMode

ローカルに設定したい。

于 2012-09-10T12:39:31.380 に答える