3

Kendo UI Grid で ClientRowTemplate を使用するための例では、厄介な HTML 文字列が使用されています。

.ClientRowTemplate(
    "<tr><td colspan=\"6\">" +
        "<div class=\"customer-details\">" +
            "<img src=\"" + @Url.Content("~/Content/web/Customers/") + "#=CustomerID#.jpg\"" +
                "alt=\"#=ContactName#\" />" +
            "<h3 class=\"k-widget\">#=ContactName#</h3>" + 
            "<dl>" +
               "<dt>Name:</dt><dd>#=ContactName#</dd>" +
               "<dt>Company:</dt><dd>#=CompanyName#</dd>" + 
               "<dt>Country:</dt><dd>#=Country#</dd>" +
            "</dl>" +
            "<dl >" +
                "<dt>Address:</dt><dd>#=Address#</dd>" +
                "<dt>Phone:</dt><dd>#=Phone#</dd>" +
            "</dl>" +
        "</div>" +
    "</td></tr>"        
)

現在部分ビューを使用し.ClientRowTemplate(Html.Partial("_ClientRowTemplate").ToHtmlString())ていますが、同じビュー ファイルにあると便利です。

<script id="rowTemplate" type="text/x-kendo-tmpl">ブロックのように少し便利なものを使用する組み込みの方法はありますか? JavaScript ではなく、Kendo MVC ヘルパーを引き続き使用したいと考えています。

4

1 に答える 1

2

テンプレート化された Razor デリゲートに関する Haacks ブログをご覧ください。 http://haacked.com/archive/2011/02/27/templated-razor-delegates.aspx/

基本的に、HTML としてレンダリングされるかみそりのチャンクを定義できます。

かみそりデリゲートを定義する

@{
Func<dynamic, object> tableRow = @<tr></tr>;
}

次に、これを行います

.ClientRowTemplate( @tableRow(null).ToString() )
于 2014-03-12T13:59:55.567 に答える