My combobox
01.
function
userNameEditor(container, options) {
02.
debugger;
03.
var
gridDataSource =
new
kendo.data.DataSource({
04.
transport: {
05.
read: {
06.
url:
'../Warehouse/SearchUser'
,
07.
dataType:
"json"
08.
},
09.
success:
function
(e) {
10.
debugger;
11.
},
12.
error:
function
(e) {
13.
debugger;
14.
}
15.
}
16.
});
17.
var
cmb=$(
'<input name="'
+ options.field +
'"/>'
)
18.
.appendTo(container)
19.
.kendoComboBox({
20.
autoBind:
false
,
21.
dataTextField:
"UserFullName"
,
22.
dataValueField:
"Id"
,
23.
filter:
"contains"
,
24.
minLength: 3,
25.
dataSource: gridDataSource,
26.
filtering:
function
(e) {
27.
28.
var
filter = e.filter;
29.
gridDataSource.read({ userSearchText: filter.value });
30.
//dataSource.filter({ userSearchText: filter.value });
31.
},
32.
dataBound:
function
(e) {
33.
debugger;
34.
var
equipmentData = e.sender.dataSource.data();
35.
36.
37.
$.each(equipmentData,
function
(index, selectedEquipmentData) {
38.
var
dataItem = e.sender.dataSource.at(index);
39.
40.
});
41.
},
42.
select:
function
(e) {
43.
debugger;
44.
this
.refresh();
45.
},
46.
complete:
function
(e) {
47.
debugger;
48.
},
49.
error:
function
(e) {
50.
debugger;
51.
}
52.
}).data(
'kendoComboBox'
);
53.
cmb.refresh();
54.
69.
};
I have one inline grid my grid have one column user combobox.I click update see error "Uncaught TypeError: Cannot use 'in' operator to search for 'RelId' in null" but I cant understand can you help me little?
My Grid
01.
var
grid =
new
BaseGrid(
'grdWarehouse_OnWarehouseUserRelation'
);
02.
grid._batch =
false
;
03.
grid._dataSourceAutoSync =
false
;
04.
grid._autoBind =
false
;
05.
grid._toolbar = [
'create'
/*, 'save', 'cancel'*/
];
06.
07.
grid._editable = {
08.
mode:
"inline"
,
09.
create:
true
,
10.
update:
true
,
11.
destroy:
true
,
12.
13.
};
14.
15.
grid._schemaMethod = {
16.
model: {
17.
id:
'RelId'
,
18.
fields: {
19.
RelId: { editable:
false
, type:
"string"
},
20.
User: { defaultValue: { Id:
''
, UserFullName:
''
} },
21.
}
22.
}
23.
};
24.
25.
grid._columns.push(grid.GridColumn(
'RelId'
,
null
,
'200px'
,
null
,
null
,
null
,
null
,
null
,
null
,
null
,
true
));
26.
grid._columns.push(grid.GridColumn(
'User'
,
'User'
,
'200px'
,
null
,
"#=User.UserFullName#"
,
null
,
null
,
null
,
null
,
null
,
null
,
null
,
null
,
null
, userNameEditor));
27.
grid._columns.push(grid.GridColumn(
null
,
' '
,
'200px'
, { style:
'text-align:right'
},
null
,
null
,
null
,
null
,
null
,
null
,
null
,
null
,
null
, [
'edit'
,
'destroy'
]));
28.
29.
grid._cancelMethod =
function
(e) {
30.
var
uid = $(
"#grdWarehouse_OnWarehouseUserRelation"
).data(
"kendoGrid"
).dataItem($(e.container).closest(
"tr"
)).uid
31.
dataSource = $(
"#grdWarehouse_OnWarehouseUserRelation"
).data(
"kendoGrid"
).dataSource
32.
var
item = dataSource.getByUid(uid);
33.
dataSource.cancelChanges(item);
34.
};
35.
36.
grid._removeMethod =
function
(e) {
37.
debugger;
38.
39.
DeleteWarehouseUserRelation(e.model.Id);
40.
e.model.IsActive =
false
;
41.
e.preventDefault();
42.
var
uid = e.model.uid
43.
dataSource = $(
"#grdWarehouse_OnWarehouseUserRelation"
).data(
"kendoGrid"
).dataSource
44.
var
item = dataSource.getByUid(uid);
45.
46.
dataSource.cancelChanges(item);
47.
48.
49.
KendoData(
'grdWarehouse_OnWarehouseUserRelation'
).refresh();
50.
};
51.
52.
grid._updateMethod =
function
(e) {
53.
54.
debugger;
55.
};
56.
grid._createMethod =
function
(item) {
57.
58.
debugger;
59.
var
error = SameWarehouseUserReleationError();
60.
61.
if
(error ==
true
) {
62.
CreateWarehouseUserReleation(item.data.User.Id);
63.
}
64.
65.
66.
KendoData(
'grdWarehouse_OnWarehouseUserRelation'
).refresh();
67.
};
68.
grid._dataBoundMethod =
function
(e) {
69.
70.
$(
"#grdWarehouse_OnWarehouseUserRelation tbody tr .k-grid-edit"
).each(
function
() {
71.
72.
var
currentDataItem = $(
"#grdWarehouse_OnWarehouseUserRelation"
).data(
"kendoGrid"
).dataItem($(
this
).closest(
"tr"
));
73.
74.
$(
this
).remove();
75.
76.
});
77.
78.
e.sender.items().each(
function
() {
79.
var
dataItem = e.sender.dataItem(
this
);
80.
kendo.bind(
this
, dataItem);
81.
});
82.
};
83.
84.
grid.GetGrid();