2013-08-05 9 views
8

剣道グリッドを使用しています。私はcshtmlファイルにテーブルを作成し、jsファイルにデータをバインドします。私の問題は、グリッドページングが消えないということです。我々は多くの負荷を期待していないので、私はページ上のすべての項目が必要です。ページ属性を削除しようとしましたが、pageable: falseに印を付けました。しかし、私はグリッドが1ページに10項目しか表示せず、ページングを与えることが分かります。kendogridでページングを無効にする方法

this.pager.element.hide()を使用すると、ページャを非表示にすることはできますが、ページャは非表示になっているがページングは​​まだ行われているため、目的を解決できません。だから、今、11番目の要素を始める要素は、enextページ上にありますが、私たちはそれにナビゲートすることはできません。

ここに既存のコードがあります。私はテーブルの無関係の列を削除しました。 .CSHTMLファイル:

<table style="width: 100%;" class='list-entity' id='inboxItems'> 
       <thead> 
        <tr> 
         <th data-field='Actions' class="iconCell" style='width: 1%'>&nbsp;</th> 
         <### THERE ARE MORE COLUMNS HERE AND THOSE HAVE CORRESPONDING COLUMNS IN SETTINGS ###>  
        </tr> 
       </thead> 
      </table> 

JSファイル:

var settings = { 
     kendosettings: { 
      dataSource: { 
       data: requestItemsList, 
       schema: { 
        // required if get method will be used 
        model: { 
         id: "StepApproverKey" 
        } 
       }, 
       group: [ 
        { 
         field: "GroupByAttribute", 
         dir: "asc", 
         aggregates: 
         [ 
          { field: "GroupByAttribute", aggregate: "count" }] 
        }] 
      }, 
      sort: { field: "SubmittedOn", dir: "desc" }, 
      sortable: true, 
      pageable: false, 
      scrollable: false, 
      columns: [ 
       { 
        field: "Actions", 
        title: "Actions", 
        template: kendo.template($("#inboxrowEditTemplate").html()) 
       }, 
       { field: "StepApproverKey", hidden: true }, 
       { 
        field: "GroupByAttribute", 
        hidden: true, 
        groupHeaderTemplate: kendo.template($("#inboxrowgroupHeaderTemplate").html()), 
        headerAttributes: { 
         style: "width: 100%" 
        } 
       } 
      ], 
      selectable: "row", 
     } 
    }; 
    $('#inboxItems').pdi().displaygrid(settings); 
+0

スクロール可能をtrueに設定しようとしましたか? – rafoo

+0

はい。スクロール可能なTrueとFalseの両方を試みました。それでも私はページングが起こっているのを見ます。 – Feroz

答えて

6

私は剣道フォーラムに投稿し、我々がそれを解決できる唯一の方法は、動的に、グリッドのページサイズを設定してするようですページャを隠す。私たちの場合、すべてのアイテムを単一の負荷にしたいので、クライアントに送信されるリストの長さに設定します。以下は、私が使用したコードであり、動作しています。使用

var inboxGrid = $('#inboxItems').data("kendoGrid"); 
inboxGrid.dataSource.pageSize(<NUMBER OF ITEMS IN THE LIST>); 
inboxGrid.refresh(); 
inboxGrid.bind("dataBound", function() { 
       this.pager.element.hide(); 
     }); 
+0

私は剣道フォーラムconvoを見つけました - http://www.telerik.com/forums/how-to-disable-paging-on-a-kendogrid – vapcguy

+1

<リストの項目数>は 'inboxGrid.dataSource .total() ' – vapcguy

0

inboxGrid.bind("dataBound", function() { 
      this.pager.element.hide(); 
    }); 

は私のために動作しませんでした。おそらく私はRazorとMVCを使ってグリッドを表示しているかもしれないし、CSSのためにBootstrapを使っているからかもしれません。しかし、私はこれを代わりにしました:

var inboxGrid = $('#inboxItems').data("kendoGrid"); 
inboxGrid.dataSource.pageSize(inboxGrid.dataSource.total()); 
inboxGrid.refresh(); 
$('[class*="k-pager-nav"]').hide(); 
関連する問題