これを行うにはいくつかの方法があります。それからちょうど編集の設定を配線し、適切delete
コマンドを破壊
columns.Command(command =>
{
command.Edit();
command.Destroy();
});
:
まず、あなたはそうのようなグリッド設定
内から作り付けの編集/削除オプションを使用することができます。
代わりに次の2つの方法のいずれか使用してこれらを鋳型することができます
まずインラインテンプレートを:
columns.Bound(c => c.ID).ClientTemplate("<a href='Edit/#=data.ID#'>Edit Link #=data.ID#</a>
<a href='Delete/#=data.ID#'>Delete Link #=data.ID#</a>")
だから、これはただの列にバインドされ、テンプレートが標準を使用して、あなたの要件ごととして追加されますhtmlとjavascriptが必要な場合。これは、単純なもののために細かいですが、あなたは、テンプレートを作成し、このようにすることを呼び出す第二の方法につながるtemplates
より複雑持っている場合は、高速非常に不格好得ることができます:
:
columns.Bound(c => c.ID).ClientTemplate("#=getButtonTemplate(data,'buttonsTemplate')#")
そのようにのようなあなたのテンプレートを作成します
<script id="buttonsTemplate" type="text/x-kendo-template">
<div class='btn-group'>
<a class="btn btn-primary" href='@Url.Action("{edit action}", "controller")/#=ID#'>Edit Link #=ID#</a>
<a class="btn btn-danger" href='@Url.Action("{delete action}", "controller")/#=ID#'>Delete Link #=ID#</a>
<div>
</script>
は、getButtonTemplate機能:
function getButtonTemplate(data, templateName) {
var templateObj = $("#" + templateName).html();
var template = kendo.template(templateObj);
return template(data);
}
だから、私は、この第二の方法をここで起こっているかを説明しましょう。
htmlをテンプレートに入れ替える代わりに、より良い単語が必要な場合は、2つのcomponents
に展開します。
getButtonTemplate関数を使用して、データ項目とテンプレートのidに2つのパラメータを渡します。この関数は単に渡されたデータオブジェクトをテンプレートにロードし、剣道マジックはhtmlをレンダリングし、必要に応じて値を注入します。この件に関する詳細は、剣道のデモサイトで確認してください。
テンプレート要素は、htmlとjavascriptの組み合わせにすることができます。テンプレートにロジックを適用する必要がある場合は、ここで行うことができます。この件についての詳細は、剣道サイトを参照してください。
個人的には、このクライアントテンプレートを実行する2番目の方法が好きです。不正なハッシュや括弧の破られたコードを管理して変更するのは簡単です。
さらに詳しい情報が必要な場合は、私にお知らせください。私はあなたの答えを更新します。