2010-05-22 41 views
0

我在ASP.Net MVC中有一個jqGrid。在ASP.Net上編輯時傳遞一個隱藏的jqGrid值MVC

電網被定義爲:

$("#list").jqGrid({ 
    url: '<%= Url.Action("History", "Farrier", new { id = ViewData["horseId"]}) %>', 
      editurl: '/Farrier/Add', 
      datatype: 'json', 
      mtype: 'GET', 
      colNames: ['horseId', 'date', 'notes'], 
      colModel: [ 
      { name: 'horseId', index: 'horseId', width: 250, align: 'left', editable:false, editrules: {edithidden: true}, hidden: true }, 
      { name: 'date', index: 'farrierDate', width: 250, align: 'left', editable:true }, 
      { name: 'notes', index: 'farrierNotes', width: 100, align: 'left', editable: true } 
      ], 
      pager: jQuery('#pager'), 
      rowNum: 5, 
      rowList: [5, 10, 20, 50], 
      sortname: 'farrierDate', 
      sortorder: "DESC", 
      viewrecords: true 
     }); 

我希望能夠做的,添加一行到網格,其中horseId或者是)不顯示或b)顯示爲灰色。但保存時傳遞給控制器​​。

它的成立方式是這樣的電網將只有1個馬身份證在同一時間(會存在馬的屬性頁上。)

我已經得到了什麼工作,唯一的一次是當我做它是可編輯的,但是然後打開它以供用戶修改ID,這不是一個好主意。

那麼有什麼方法可以在提交數據之前設置此值?它確實存在作爲一個變量在這個頁面上,如果這有助於任何(我已檢查它不是null)。

謝謝

+0

其中的jqGrid的編輯類型是您使用?內聯還是表單? – AdmSteck 2010-05-22 11:03:55

+0

我正在使用表單 – taylonr 2010-05-22 13:32:00

回答

1

我最終定義了一個帶有ViewData值的jscript變量。然後將其用於編輯選項:defaultvalue屬性。

這裏是我的腳本:

var defVal = '<%= ViewData["horseId"] %>'; 
    $(function() { 
     $("#list").jqGrid({ 
      url: '<%= Url.Action("History", "Farrier", new { id = ViewData["horseId"]}) %>', 
      editurl: '/Farrier/Add', 
      datatype: 'json', 
      mtype: 'GET', 
      colNames: ['horseId', 'date', 'notes'], 
      colModel: [ 
      { name: 'horseId', index: 'horseId', width: 250, align: 'left', editable: true, editoptions: { defaultValue:defVal}, hidden:true }, 
      { name: 'date', index: 'farrierDate', width: 100, align: 'left', formatter:'date', datefmt: 'mm/dd/yyyy', editable: true, editrules: {date:true} }, 
      { name: 'notes', index: 'farrierNotes', width: 500, align: 'left', editable: true, edittype: 'textarea' } 
      ], 
      pager: jQuery('#pager'), 
      rowNum: 5, 
      rowList: [5, 10, 20, 50], 
      sortname: 'farrierDate', 
      sortorder: "DESC", 
      viewrecords: true, 
      width: 850 
     }); 
     jQuery("#list").navGrid('#pager', { add: true }); 
    }); 
相關問題