2017-05-17 10 views
1

내보기 :KnockOut Paged Grid에 대해 행을 삭제하는 방법은 무엇입니까?

<div data-bind='simpleGrid: gridViewModel'> </div> 

    <button data-bind='click: addItem'> 
     Add item 
    </button> 

    <button data-bind='click: sortByName'> 
     Sort by name 
    </button> 

    <button data-bind='click: jumpToFirstPage, enable: gridViewModel.currentPageIndex'> 
     Jump to first page 
    </button> 

내보기 모델 : 나는 모든 줄을 삭제 할 수 있도록하려는 http://jsfiddle.net/rniemeyer/QSRBR/

: 여기

var initialData = [ 
    { name: "Well-Travelled Kitten", sales: 352, price: 75.95 }, 
    { name: "Speedy Coyote", sales: 89, price: 190.00 }, 
    { name: "Furious Lizard", sales: 152, price: 25.00 }, 
    { name: "Indifferent Monkey", sales: 1, price: 99.95 }, 
    { name: "Brooding Dragon", sales: 0, price: 6350 }, 
    { name: "Ingenious Tadpole", sales: 39450, price: 0.35 }, 
    { name: "Optimistic Snail", sales: 420, price: 1.50 } 
]; 

var PagedGridModel = function(items) { 
    this.items = ko.observableArray(items); 

    this.addItem = function() { 
     this.items.push({ name: "New item", sales: 0, price: 100 }); 
    }; 

    this.sortByName = function() { 
     this.items.sort(function(a, b) { 
      return a.name < b.name ? -1 : 1; 
     }); 
    }; 

    this.jumpToFirstPage = function() { 
     this.gridViewModel.currentPageIndex(0); 
    }; 

    this.gridViewModel = new ko.simpleGrid.viewModel({ 
     data: this.items, 
     columns: [ 
      { headerText: "Item Name", rowText: "name" }, 
      { headerText: "Sales Count", rowText: "sales" }, 
      { headerText: "Price", rowText: function (item) { return "$" + item.price.toFixed(2) } } 
     ], 
     pageSize: 4 
    }); 
}; 

ko.applyBindings(new PagedGridModel(initialData)); 

그리고 내 jsFiddle입니다. 각 행 삭제 작업의 끝에서 가져오고 싶습니다. 내가 어떻게 할 수 있니? 미리 감사드립니다. 나는 너희들의 대답을 기다리고있다.

+0

배열에서 객체 제거 – Rajesh

+0

답변 주셔서 감사합니다. 그러나 어떻게? :) –

답변

1

녹아웃 구성 요소는 관련된 데이터를 기반으로합니다.

행을 제거하려면 해당 행과 관련된 배열을 조작하기 만하면됩니다.

Sample JSFiddle.

난 그냥 데모 목적을 위해 array.shiftarray.pop을 사용했다

참고. array.splice을보고 중간에있는 행을 삭제할 수 있습니다.

+1

Ohhh 정말 thx Rajesh. –

+0

안녕하세요 Rajesh이 좀 봐주세요 내가 도움이 필요해 제발 ... http://stackoverflow.com/questions/44105945/knockout-gridview-how-to-delete-line –