2

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
         }
       }          
     });
4

1 に答える 1

6

両方の定義は同等ではありません。

最初の1つ:

fields: { 
    ProductID: { type:"id" },
    ProductName: {type:"string"}
}      

連想配列 (インデックスはProductIDProductName) を使用し、2 番目:

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

于 2013-06-13T14:56:07.770 に答える