2016-09-15 2 views
1

여기에 문제가 있습니다. 검도 그리드를 사용하면 컨트롤러의 일부 동작에서 데이터를로드하고 있습니다.하지만 마지막 컬럼에서 동일한 컨트롤러에서 다른 액션을 실행해야하는 링크가 있습니다. 삭제하면 이 코드 조각페이지로드 후 그리드에 데이터 바인딩하기

     type: "json", 
        transport: { 
         read: { 
          url: "@Html.Raw(Url.Action("ListFinances", "Jobs"))", 
          type: "POST", 
          dataType: "json", 
          data: additionalData 
         }, 

        }, 
        schema: { 
         data: "Data", 
         total: "Total", 
         errors: "Errors" 
        }, 

마지막 열이 완벽하게 작동하고, 비트 때 코드의이 작품은, 내가 도움에 여기하십시오> 마지막 열이 작동하지 않는, 존재, mvc.Below에 새로 온 코드는 다음과 같습니다

    $("#jobs-grid").kendoGrid({ 
          dataSource: { 
           data: @Html.Raw(JsonConvert.SerializeObject(Model.FinishedJobs)), 
           schema: { 
            model: { 
             fields: { 
              JobNumber: { type: "string" }, 
              CustomerId: { type: "number" }, 
              JobCount: { type: "number" }, 
              JobYear: { type: "number" }, 
              Status: { type: "number" }, 
              Position: { type: "number" }, 
              Finished: { type: "boolean" }, 
              HasInvoice: { type: "boolean" }, 
             } 
            } 
           }, 
           type: "json", 
        transport: { 
         read: { 
          url: "@Html.Raw(Url.Action("ListFinances", "Jobs"))", 
          type: "POST", 
          dataType: "json", 
          data: additionalData 
         }, 

        }, 
        schema: { 
         data: "Data", 
         total: "Total", 
         errors: "Errors" 
        }, 
           error: function(e) { 
            display_kendoui_grid_error(e); 
            // Cancel the changes 
            this.cancelChanges(); 
           }, 
           pageSize: 20, 
           serverPaging: true, 
           serverFiltering: true, 
           serverSorting: true 
          }, 

          //dataBound: onDataBound, 
          columns: [ 
           @*{ 
              field: "Status", 
              title: "Status", 
              template: '#= Status #' 
             },*@ 
           { 
            field: "JobNumber", 
            title: "jobNumber", 
            template: '#= JobNumber #' 
           }, 
           { 
            field: "CustomerId", 
            title: "Customer", 
            template: '#= Customer.Name #' 
           }, 
           { 
            field: "Id", 
            title: "Id" 
           }, 

           @*{ 
              field: "ShortDesc", 
              title: "ShortDesc" 
             },*@ 
           { 
            field: "DateCompletition", 
            title: "DateCompletition" 
           }, 
           { 
            field: "Id", 
            title: "@T("Common.Edit")", 
            width: 130, 
            template: '<a href="../Finances/Edit/#=Id#">Edit</a>' 
           } 
          ], 
          pageable: { 
           refresh: true, 
           pageSizes: [5, 10, 20, 50] 
          }, 
          editable: { 
           confirmation: false, 
           mode: "inline" 
          }, 
          scrollable: false, 
          // sortable: true, 
          // navigatable: true, 
          // filterable: true, 
          // scrollable: true, 
          selectable: true 

         }); 
        }); 
     </script> 
+0

당신은 당신의 코드를 어떻게? 사용되는 @T here

희망이 당신에게 도움이 될 것입니다 검도 그리드의 문서에 모습을 가질 수있다 오류를 포함하고 있습니다 – Monah

+0

그것은 번역 목록입니다, 그것을 보지 마세요, 중요하지 않습니다 – programmingcenter

+0

예를 들어 자바 스크립트 코드는'title : "@T ("Common.Edit ")",''title : '@T (" "Common.Edit") ''서버 코드와 클라이언트 코드가 섞여 있기 때문에 – Monah

답변

1

command을 표에 추가하려는 것 같습니다. 쉼표를 추가하는 방법 here을 설명

var grid = $("#jobs-grid").kendoGrid({ 
         dataSource: { 
          pageSize: 20, 
          data: @Html.Raw(JsonConvert.SerializeObject(Model.FinishedJobs)), 
         }, 
         pageable: true, 
         height: 550, 
         columns: [ 
          { field: "JobNumber", title: "JobNumber", width: "140px" }, 
          { field: "CustomerId", title: "Customer", width: "140px" }, 
          { field: "Id", title:"Id" }, 
          { field: "DateCompletition", title:"DateCompletition" }, 
          { command: { text: "Edit", 
             click: function(e){ 
               // here you can add your code 
              }}, 
           title: " ", 
           width: "180px" }] 
        }).data("kendoGrid"); 

을 다음과 같이 차 당신은

+0

함수에서 뮤 편집 링크를 추가해야합니까? – programmingcenter

+0

이 함수에서 실제로 원하는 동작을 작성해야합니다. 예를 들어 모눈을 숨기고 부분 뷰를 편집하거나 창을 팝업하고 편집 뷰를 내부에 표시하려면 원하는 시나리오와 모든 경우에 따라 달라야합니다. 당신은 $ .ajax와 같은 것을 사용할 필요가있다. – Monah

+0

또한, 편집과 파괴와 같은 그리드에 대한 액션이 내장되어있다. 예를 들어 다음과 같이 사용할 수있다 : command : 'destroy' – Monah