web-dev-qa-db-ja.com

剣道グリッドのポケットベルエラー(Nan-Nan of 1 items)

生徒の詳細のリストを使用して剣道グリッドを作成しようとしています。追加ボタンをクリックすると、ポケットベルに「1アイテムのナンナン」と表示されます。

@(Html.Kendo().Grid<Student.Models.StudentDetails>()
            .Name("StudentDetailsGrid")
             .Pageable()
                 .HtmlAttributes(new { id="StudentDetailsGrid"})
            .Columns(col =>
                {col.Bound(a => a.FirstName).Title("Name");

                    col.Bound(a => a.LastName).Hidden()
                    col.Bound(a => a.StudentID).Hidden();
                    col.Command(a => { a.Destroy(); a.Edit(); }).Title("");
                }
            )
            .ToolBar(toolbar => toolbar.Create().Text("Add").HtmlAttributes(new {@id="btnCreateStudent"}))
            .Editable(editable => editable.Mode(GridEditMode.InLine))
                .Scrollable(scrol => scrol.Enabled(true))

            .DataSource(source => source
                .Ajax()
                .PageSize(5)

                .Model(a =>
                {
                    a.Id(b => b.StudentID);


                })

             .Read(read => read.Action()
             .Create(create => create.Action())
             .Destroy(destroy => destroy.Action())
             .Update(update => update.Action())


           ).Events(even => even.Save("SaveDetails").Edit("ChangeNoOfStudent").DataBound("StudentValidate")))

`

document.ready関数:

$(document).ready(function () {
        $.ajax({
                url: '../Student/GetStudentDetails?StudentId=' + Data.StudentId,
                type: 'POST',
                contentType: 'application/json',
                dataType: 'json',
                success: function (data) {

                    if (data.length > 0) {


                        var studentdetail = new kendo.data.DataSource({
                            data: data,
                            pageSize: 5

                        });
                        $("#StudentDetailsGrid").data("kendoGrid").setDataSource(studentdetail);

                    }

ページサイズを追加しましたが、「1アイテムのナンナン」が表示されます。

手伝ってもらえますか?

11
Rohini

グリッドデータソースでpageSizeを定義する必要があります。成功関数ではありません。

あなたの場合、あなたはあなたのデータソースに以下を含める必要があるだけです:

 $.ajax({
                url: '../Student/GetStudentDetails?StudentId=' + Data.StudentId,
                type: 'POST',
                contentType: 'application/json',
                dataType: 'json',
                pageSize: 10,
                success: function (data) {...

これがお役に立てば幸いです。詳細情報: Sudarsan Dash'blogs

19
freedeveloper

以下のように動作させました:データソース内でページサイズを指定すると、問題が修正されました(1項目のNan-Nan)

< script type = "text/javascript" >

  $(document).ready(function() {

    var modelData = @Html.Raw(Json.Encode(Model));

    $("#grid").kendoGrid({

      reorderable: true,
      pageable: {
        input: true,
        numeric: false
      },
      scrollable: true,
      sortable: true,
      dataSource: {
        data: modelData,
        pageSize: 10 // specifying the pagesize inside the datasource fixed my problem (Nan-Nan of 1 items)
      },
      columns: [{
        field: "fieldparameter",
        title: "titleparameter",
        filterable: true,
        sortable: true
      }]
    });
  }); < /script>
15
Kishore

これは、問題を解決するために必要なものです。夢のように機能します!

<script>
    $(document).ready(function () {

        $("#grid").kendoGrid({

            dataSource: {
                pageSize: 10
            },

        });
    });
</script>
4
Majase

DataSource:{}内にpageSize:5を次のように追加します。

         dataSource: {
            pageSize: 5
         }

pageSize:5をdataSource:{}の外に置くと、エラー「Nan-Nan」が発生します。

2
Gurusinghe

何らかの理由で、データソースにpageSizeを追加するだけではうまくいきませんでした。

最初のグリッドページを1に設定することでこの問題を解決し、pageSizeもデータソースで定義されています。

                    var grid = $("#grid").data("kendoGrid");
                    var dataSource = new kendo.data.DataSource({ data: response.data });
                    grid.setDataSource(dataSource);
                    grid.dataSource.page(1); // need so that Nan - Nan is not the starting page.
                    grid.dataSource.read();
0
alexdannylow

@(Html.Kendo()。Grid()から.PageSize(5)を削除します。varstudentdetail= new kendo.data.DataSource({

0
kunal