2017-10-22 15 views
0

kendoGidを使用してデータを表示していますが、(userName、firstName、lastName、email、phoneNumber、roleName、supplierCode)フィールドがあります。私は正確にデータを取得しています。すべてのCRUD操作がうまく実行されています。ここで複数のカスタム剣道エディタ

私のグリッドコードです:

 var grid = $("#grid").kendoGrid({ 
     dataSource: usersDataSource, 
     schema: { 
      model: { 
       id:"$id", 
       fields: { 
        userName: { }, 
        firstName: { }, 
        lastName: { }, 
        email: { }, 
        phoneNumber: { }, 
        roleName: { }, 
        supplierCode: { } 
       } 
      } 
     }, 
     editable: "popup", 
     edit: function (e) { 
      $(e.container).find('input[name="prontoCode"]').attr({ "hidden": true }); 

     }, 
     columns: 
       [  .....Other Fields Definition ... 
        { 
         field: "roleName", 
         title: "Role Name", 
         editor: rolesDropDownEditor 
        }, 
        { 
         field: "prontoCode", 
         title: "Supplier Code", 
         editor: supplierDropDownEditor, 
        } 
       ], 
    }); 

あなたは私の列定義では上記を参照できるように、私は、カスタムエディタ(kendoDropDown)と剣道ポップアップ編集プロパティを使用していました。ここ はrolesDropDownEditorのコードです:rolesDropDownで

 function rolesDropDownEditor(container, options) { 
     $('<input required name="' + options.field + '"/>') 
      .appendTo(container) 
      .kendoDropDownList({ 
       dataSource: { 
        transport: { 
         read: { 
          url: "URL", 
          type: "get", 
          datatype: "json", 
         } 
        } 
       }, 
       change: function (e) { 
        if (e.val == "Supplier") { 
        $(e.container).find('input[name="prontoCode"]').attr({ "hidden": false }); 
        } 
       } 
      }); 
    } 

値は(管理者、検査官、エンジニア&サプライヤー)している、私は、ユーザーがroleDropDownから「サプライヤー」を選択したときsupplierDropDownを見せたい... どれに役立ちます他の変更機能によって1つのドロップダウンを表示または非表示にするにはどうすればよいですか?ありがとう

答えて

0

サプライヤDropDownEditorに TR(行)が見つかりました。

var tr = $("#grid").data("kendoGrid").dataItem($(container[0]).closest("tr")) 

tr.roleNameの値を見つけます。

roleNameによると、異なるデータソースを作成します(if-elseブロックを置き、異なるajax呼び出しを追加するだけです)。必要なデータソースをバインドします。

さらに詳しい説明が必要な場合はお知らせください。

関連する問題