0

Lib.Web.Mvc.JQuery.JqGrid追加/編集ボタンを追加する機能を除いて、NuGetの優れたライブラリが機能しています。次のコードを使用してテーブルを初期化しています。

@{
    var grid = new JqGridHelper<TVTViewModel>("tuples",
        dataType: JqGridDataTypes.Json,
        methodType: JqGridMethodTypes.Post,
        pager: true,
        rowsNumber: 50,
        sortingName: "RecordId",
        sortingOrder: JqGridSortingOrders.Asc,
        url: Url.Action("Details", new { nctId = Model.NctId }),
        viewRecords: true,
        cellEditingEnabled: true,
        cellEditingSubmitMode: JqGridCellEditingSubmitModes.ClientArray
        )
        .AddActionsColumn("Actions", width: 25,
inlineEditingOptions: new JqGridInlineNavigatorActionOptions { Keys = true },
editButton: false,
deleteOptions: new JqGridNavigatorDeleteActionOptions { Url = Url.Action("Test", "Test") });
}

および次のコントローラー応答コード:

        JqGridResponse response = new JqGridResponse()
        {
            TotalPagesCount = (int)Math.Ceiling((float)totalRecordsCount / (float)request.RecordsCount),
            PageIndex = request.PageIndex,
            TotalRecordsCount = totalRecordsCount
        };

        int i = 0;

        foreach (TVTViewModel v in viewModels)
        {
            v.RecordId = i;
            response.Records.Add(new JqGridRecord<TVTViewModel>(v.RecordId.ToString(), v));
            i++;
        }

        return new JqGridJsonResult() { Data = response };

ただし、ページがレンダリングされると、追加の列は列のすべての行に対して「未定義」として表示されます。

オンラインでは、いくつかの場所で、私が試しresponseresponse.Reader.RepeatItems = false;ものがあることを確認することが提案されました (そして、機能しませんでした)。他の提案はありますか?

4

1 に答える 1

0

ええ、それはばかげたことでした。

NuGet から取得する場合grid.locale-en.jsは、通常フォルダーに含まれているものを含める必要があります。scripts/i18n

jqgridの未定義の整数を参照してください。同様の問題の詳細については、pager not loadingを参照してください。

于 2013-11-03T04:37:21.640 に答える