2013-03-25 1 views
0

사용자 지정 명령을 사용하여 팝업 창을 표시하려고합니다.KendoUI 사용자 지정 명령 팝업 : ReferenceError : wnd가 정의되지 않았습니다.

$(document).ready(function(){ 
     var wnd, detailsTemplate; 
     $("#grid").kendoGrid({ 
      dataSource:{ 
       serverPaging: true, 
       transport: { 
        read: "<?php echo base_url() ?>index.php/user_management/manage_users/list_view/" 
       }, 
       schema:{ 
        data: "data", 
        total: "total" 
       }, 
       pageSize:5 
      }, 
      scrollable: true, 
      selectable: true, 
      sortable: true, 
      filterable: true, 
      pageable: { 
       input: true, 
       numeric: false 
      }, 

      columns: [ 
       { 
        field: "UserID", 
        hidden:true 
       }, 
       { 
        field: "Username", 
        title:"Username" 
       }, 
       { field: "FirstName", 
        title:"First Name" 
       }, 
       {field:"MiddleNames"}, 
       {field:"LastName"}, 
       {field:"City"}, 
       {field:"Email"}, 
       //{field:"Actions"}, 
       {command: { text: "Details", click: showDetailsPopup }, title: " ", width: "140px" } 
      ] 


     }); 
     wnd = $("#details") 
       .kendoWindow({ 
        title: "Customer Details", 
        modal: true, 
        visible: false, 
        resizable: false, 
        width: 300 
       }).data("data"); 
     detailsTemplate = kendo.template($("#template").html()); 


    }); 

    function showDetailsPopup(e) { 
     e.preventDefault(); 
     var dataItem = this.dataItem($(e.currentTarget).closest("tr")); 
     wnd.content(detailsTemplate(dataItem)); 
     wnd.center().open(); 
    } 

그리드에서 "Details (세부 정보)"버튼을 클릭하면 방화 광에서이 오류가 나타납니다.

ReferenceError: wnd is not defined 
[Break On This Error] 

wnd.center().open(); 

업데이트 : 여기 내 템플릿

<script type="text/x-kendo-template" id="template"> 
     <div id="details-container"> 
      <h2>#= FirstName #</h2> 
     </div> 
</script> 

답변

3

.DATA을 보정 해주십시오 ("데이터")입니다 :

wnd = $("#details") 
      .kendoWindow({ 
       title: "Customer Details", 
       modal: true, 
       visible: false, 
       resizable: false, 
       width: 300 
      ** }).data("data");** 
    detailsTemplate = kendo.template($("#template").html()); 


}); 

그것은 .DATA해야한다 ("kendoWindow") 아래;

wnd = $("#details") 
      .kendoWindow({ 
       title: "Customer Details", 
       modal: true, 
       visible: false, 
       resizable: false, 
       width: 300 
      }).data("kendoWindow"); 
    detailsTemplate = kendo.template($("#template").html()); 
}); 
+0

예, 문제는 .data ("kendoWindow")입니다. 당신의 시간 동안 고마워 친구 : D –

관련 문제