我正在可编辑的网格中使用 extjs 4 创建一个组合框(我使用 extjs 4)并且我使用外部 ajax 调用来填充它而不是使用 extjs 代理,原因是我使用相同的调用来加载其他组合盒子。所以我想为什么不使用相同的功能。下面是 store、model、dropdown 和 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
我的猜测是商店的 url 配置是必要的,我没有提供它. 或者我在这里做错了什么?