KendoUI 그리드의 set
을 사용하여 요소를 수정하면 선택 항목이 제거됩니다.KendoUI 그리드 수정 셀 제거 선택
는 KendoUI DataSource
는 다음과 같이 정의 된 경우 :
var dataSource = new kendo.data.DataSource({
data : [
{ "id": 1, "item": "item1", "value": "foo" },
{ "id": 2, "item": "item2", "value": "foo" },
{ "id": 3, "item": "item3", "value": "foo" },
{ "id": 4, "item": "item4", "value": "foo" }
],
pageSize: 5
});
과 grid
같은 : 나는 행을 클릭하면 (선택) 한 후 사용하여 다음을 모델을 업데이트
var grid = $("#grid").kendoGrid({
dataSource: dataSource,
columns : [
{ field: "item", title: "Item" },
{ field: "value", title: "Value" }
],
selectable: "row"
}).data("kendoGrid");
코드 :
dataSource.data()[0].set("value", "bar");
선택이 손실됩니다. JSFiddle에서
샘플 코드 here
방법 :
- 어떤 행을 선택합니다.
- 첫 번째 행의
value
을 변경하려면 버튼을 클릭하십시오.
로컬 DataSource
을 업데이트 할 때 선택을 보존하는 방법이 있습니까?
물론이 좋은 이유가이 동작입니다하지만이 예상되는 나에게 매우 이상한 보이는
. 아무튼 대답이 받아 들여졌습니다. – OnaBaiGrid는 선택에 대해 아무 것도 모른다. CSS 클래스 일 뿐이다. Grid 요소가 다시 만들어지면 클래스가 사라집니다. 그것만큼이나 간단합니다. –
간단히 말하면 전체 행을 다시 그리는 것이 더 쉽다는 것을 알고 있습니다. 그러나이 경우 선택 항목은 제거되고'change' 이벤트는 발생하지 않습니다. 다시 말하지만 우리는 행의 이전 버전에 '변경'을 바인딩하고 다시 그려야한다는 것을 알고 있지만 프로그래머는 HTML과 CSS를 항상 생각하고 (그리고 KendoUI가 어떻게 구현되는지 알고 있어야합니다.) – OnaBai