Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 20th, 2012  |  syntax: None  |  size: 4.32 KB  |  hits: 14  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Jqgrid Custom Validation Not Working in mvc3
  2. <script type="text/javascript">
  3.  
  4.     $(document).ready(function () {
  5.  
  6. $.getJSON("/ChequeBookReceipt/getChequeType/", function (data) {
  7.             setupGrid(data.item);
  8.         });
  9.  
  10.  
  11.  
  12.  
  13.  
  14.         function reload(result) {
  15.             $("#listChequeBook").trigger("reloadGrid");
  16.         }
  17.     });
  18.  
  19.  
  20.  
  21.     function setupGrid(data) {
  22.         var success = false;
  23.         var message = 'success';
  24.         var item = data;
  25.         jQuery(document).ready(function () {
  26.  
  27.             /*Begin Grid*/
  28.             $("#listChequeBook").jqGrid({
  29.                 url: '/ChequeBookReceipt/GetChequeBookGrid/',
  30.                 datatype: 'json',
  31.                 mtype: 'GET',
  32.                 data: $(this).serialize(),
  33.                 colNames: ['Cheque Type', 'Book number', 'First Leaf Number', 'Last Leaf Number'],
  34.  
  35.                 colModel: [
  36.  
  37.                          { name: 'chequeType', index: 'chequeType', editrules: { required: true }, width: 150, editable: true, sortable: false, sorttype: "text", edittype: "select", editoptions: { value: item }, formatter: "select", width: "200px" },
  38.                          { name: 'bookNumber', index: 'bookNumber',
  39.                              editrules: { integer: true, required: true, custom: true,
  40.                                  custom_func: function (value, colname) {
  41.  
  42.                                      $.ajaxSetup({ cache: false });
  43.                                      $.getJSON("/ChequeBookReceipt/IsUniqueBookNumber/", { value: value, colname: colname }, function (data) {
  44.  
  45.                                          if (data != null) {
  46.                                              //alert(data.success + " - " + data.message);
  47.                                               return [data.success, data.message];
  48.  
  49.  
  50.                                          }
  51.  
  52.                                      });
  53.  
  54.  
  55.  
  56.  
  57.                                  }
  58.                              }, formoptions: { elmsuffix: ' *' }, sortable: false, width: 100, editable: true, sorttype: "text", width: "100px"
  59.                          },
  60.                          { name: 'firstLeafNumber', index: 'firstLeafNumber', editrules: { integer: true, required: true }, formoptions: { elmsuffix: ' *' }, sortable: false, width: 100, editable: true, sorttype: "text", width: "100px" },
  61.                          { name: 'lastLeafNumber', index: 'lastLeafNumber', editrules: { integer: true, required: true}, sortable: false, width: 100, editable: true, sorttype: "text", width: "100px" }
  62.  
  63.  
  64.                     ],
  65.                 rowNum: 10,
  66.                 rowList: [10, 20, 30],
  67.                 //     loadonce: true,
  68.                 ignoreCase: true,
  69.                 autowidth: true,
  70.                 sortname: 'bookNumber',
  71.                 sortorder: "asc",
  72.                 pager: jQuery('#pagerChequeBook'),
  73.                 viewrecords: true,
  74.                 caption: "Cheque Book",
  75.                 editurl: "/ChequeBookReceipt/UpdateChequeBookGrid/",
  76.                 //                onSelectRow: function (id) {
  77.                 //                    if (id && id !== "") {
  78.                 //                        jQuery('#listChequeBook').editRow(id, true);
  79.                 //                    
  80.                 //                    }
  81.                 //                },
  82.                 beforeRequest: function () {
  83.                     $.getJSON("/ChequeBookReceipt/getChequeType/", function (data) {
  84.                         item = data.item;
  85.  
  86.                         // setupGrid(data.item);
  87.                     });
  88.                 }
  89.  
  90.  
  91.             });
  92.             jQuery("#listChequeBook").jqGrid('navGrid', "#pagerChequeBook", { edit: false, add: false, del: true, search: false, refresh: false },
  93.              { reloadAfterSubmit: true });
  94.             $("#listChequeBook").jqGrid('inlineNav', '#pagerChequeBook', { addParams: { addRowParams: {
  95.                 "keys": true, "aftersavefunc": function () { var grid = $("#listChequeBook"); reloadgrid(grid); }
  96.             }
  97.             }, editParams: { "aftersavefunc": function () { var grid = $("#listChequeBook"); reloadgrid(grid); } }
  98.  
  99.  
  100.             });
  101.  
  102.  
  103.             function reloadgrid(grid) {
  104.                 //   grid.trigger("reloadGrid");
  105.                 grid.setGridParam({ datatype: 'json', page: 1 }).trigger('reloadGrid');
  106.             }
  107.  
  108.             /*End Grid*/
  109.  
  110.  
  111.         });
  112.     }
  113.  
  114. </script>