我試圖使用jqGrid的相當複雜的用戶界面。網格最終需要有一個下拉列,一個自動完成和一個按鈕列。目前,我無法確定如何設置一個包含select
列的列,該列在我的模型中填充IEnumerable
的值,設置來自模型屬性的初始選定值,並在用戶更改時更改該屬性列表的值爲select
。例如,說我有這些模型:jqGrid列與模擬Html.DropDownListFor選擇列表
public class GridRowModel
{
public int GridRowModelId { get; set; }
public string SomeText { get; set; }
public int SomeSelectOptionId { get; set; }
}
public class SelectOption
{
public int SomeSelectOptionId { get; set; }
public string Description { get; set; }
}
public class SomeModel {
public int SomeModelId { get; set; }
public IEnumerable<GridRowModel> GridRowModels { get; set; }
public IEnumerable<SelectOption> AllSelectOptions { get; set; }
}
的SomeModel
的AllSelectOptions
屬性被設置在控制器,與模型其他事情一樣。控制器還有一個方法GetSomeModelGridRows
,返回jqGrid rows
的GridRowModel
對象數組。然後,我有剃刀,看起來是這樣的:
@model SomeModel
<table id="someModelGridRows" cellpadding="0" cellspacing="0"></table>
<div id="pager" style="text-align: center;"></div>
<script type="text/javascript">
$(document).ready(function() {
$("#someModelGridRows").jqGrid({
url: '@Url.Action("GetSomeModelGridRows")',
datatype: 'json',
mtype: 'POST',
colNames: ['GridRowModelId', 'Text', 'Select Option'],
colModel: [
{ name: 'GridRowModelId', index: 'GridRowModelId', hidden: true },
{ name: 'SomeText', index: 'SomeText' },
{ name: 'SomeSelectOptionId', index: 'SomeSelectOptionId', edittype: 'select',
**?? is this where I would do something and if so, what ??**
],
//the rest of the grid stuff
});
});
</script>
在非電網的情況下,這將使用Html.DropDownListFor
幫手簡單。有什麼方法可以在此使用?我是否會以這種錯誤的方式去做這件事,甚至有可能嗎?