1

剣道グリッドの列にラジオボタンを表示したい。私は非常に多くの方法を試しました。ラジオボタンを表示せずに行にヘッダーのみを表示します。私はMVC4で働いています

私のコード:

@(Html.Kendo().Grid<razor.Core.BOL.TRD_OrderItem>()
                    .Name("Grid")
                    .Columns(columns =>
                    {
                        columns.Bound(item => item.OrderId).Hidden(true);
                        columns.Template(item => @Html.RadioButton("Approve", true, false, new { @id = "Approve" })).Title("Approve");
                        columns.Bound(m => m.MatchType).Title("Match Type");
                        columns.Bound(item => item.OrderDate).Format("{0:MM/dd/yyyy}").Title("Date");
                        columns.Bound(item => item.OrderType).Title("Sell");
                        columns.Bound(item => item.Description).Title("Ask");
                        columns.Bound(item => item.OrderAmount).Title("Total");
                        columns.Bound(item => item.OrderStatus).Title("Status");
                    })
                                     .Pageable()
                                     .Sortable()
                                     .DataSource(dataSource => dataSource
                                     .Ajax()
                                     .PageSize(10)
                                      .Model(model =>
                                      {
                                          model.Id(m => m.OrderId);
                                      })
                                      .Read(read => read.Action("GetOrderOption", "Order", new { OrderId = ViewBag.OrderId}))
                        ))

ありがとう、

Sソム

4

1 に答える 1

0

私の場合、ラジオボタンはモデルにバインドされているため、ラジオボタンの値(承認済み)を保存するフィールドを追加する必要があるため、例に従って、ラジオボタンの列を次のように追加しました。

columns.Bound(item => item.Approved).Template(@<text></text>).ClientTemplate("<input type='radio' name='ItemList[#= index(data)#].Approved' value='true' />").Title("Approve");

ItemListは、モデル内の TRD_OrderItem のリストの名前です。

また、ラジオボタン名フィールドのインデックスを取得するために使用される次の JavaScript 関数を追加する必要があります。

function index(dataItem) {
    var data = $("#Grid").data("kendoGrid").dataSource.data();

    return data.indexOf(dataItem);
}
于 2014-02-04T15:43:39.967 に答える