我正在使用KendoUi控件。我已将dataSource定义为
var dataSource = new kendo.data.DataSource({
schema: {
model: {
id: "ProductID",
fields: {
ProductID: { type:"id" },
ProductName: {type:"string"}
}
}
}
});
现在我的问题是我们可以将fileds
定义为array
var arry = [{ProductID:{type:"id"}}, {ProductName:{type:"string"}}];
现在我们可以像
那样定义dataSource var dataSource = new kendo.data.DataSource({
schema: {
model: {
id: "ProductID",
fields: arry
}
}
});
答案 0 :(得分:6)
两种定义都不相同。
第一个:
fields: {
ProductID: { type:"id" },
ProductName: {type:"string"}
}
使用关联数组(索引为ProductID
和ProductName
),而第二个:
var arry = [{ProductID:{type:"id"}}, {ProductName:{type:"string"}}];
...
fields: arry
...
您使用索引为0
和1
的数组。
您可以动态定义它们,但您应将arry
定义为:
var arry = { ProductID:{type:"id"}, ProductName:{type:"string"} };
或
var arry = {};
arry.ProductID = { type: "id" };
arry.ProductName = { type : "string" };
或
var arry = {};
arry["ProductID"] = { type: "id" };
arry["ProductName"] = { type : "string" };
但arr
必须是object
,而不是array