2013-07-25 1 views
0

편집이 팝업으로 설정된 표가 있습니다.팝업 모양 편집 : 현재 선택된 행이 무엇인지 알 수있는 방법

내 그리드 모델에서 필자는 아래와 같이 고유성에 대한 필드 수준 유효성 검사를 정의했습니다. 필드 값과 같은 행의 값을 비교하지 않도록 현재 선택된 행이 어느 것인지 어떻게 알 수 있습니까?

model: { 
     id: "id", 
     fields: { 
      id: { 
       nullable: false, 
       editable: false, 
       hidden : true 
      }, 
      "timeStamp": { 
       type: "date", 
       validation: { // validation rules 
        required: true, // the field is required 
        unique: function (input) { 
          if (!input.is("[name=timeStamp]")) { 
           return true; 
          } 
         input.attr("data-unique-msg", '${msg.UNIQUE_TIME}' ); 
          var data = grid.dataSource.data(); 
          //HOW CAN I KNOW WHICH ROW Is currently selected? 

답변

1

다소 힘들 겠지만 작동해야합니다. 데이터 소스의 각 레코드에는 검도 UI에서 할당 한 고유 ID가 있습니다. 이 uidpopup 편집을 위해 창에서 사용되어 Kendo UI가 상태를 저장하지 않고도 편집중인 레코드를 쉽게 식별 할 수 있습니다. 당신도 똑같이해야합니다.

var uid = $(input).closest(".k-popup-edit-form").data("uid"); 
var item = grid.dataSource.getByUid(uid); 

지금, item 레코드의 모든 필드가 편집중인 포함

함수는 할 필요가있다.

1

저는 Kendo Grid Popup Window에서 맞춤 검사기를 사용하고 있습니다. 내가 페이지 페이지에서 코드 이식성, 그리드 객체를 참조하지 않기 때문에

var m = $(input).closest('.k-popup-edit-form').data('kendoEditable').options.model; 

나는이 메커니즘을 선호 : 나는 모델을 얻기 위해 다음 코드를 사용했다.

+1

두 답변이 모두 작동합니다. 휴대 성으로 인해 귀하의 것을 선호합니다. – OlafW

관련 문제