从参考my previous question,我在内联JqGrid中添加了一个drop select。我已经配置下拉列表如下Cast Inline JqGrid下拉值到MVC视图模型
$("#tbl-items").CreateGrid({
url: // MVC controller action url,
colNames: ['Item ID', 'Item Name', 'Gender',....],
colModel: [
{ name: 'ItemID', index: 'ItemID', sorttype: 'integer', hidden: true, key: true },
{name: 'ItemName', index: 'ItemName', sortable: true, autowidth: true, shrinkToFit: true, searchoptions: { sopt: ['cn'] }, editable: true},
{name: 'Gender', index: 'Gender', sortable: true, autowidth: true, shrinkToFit: true, searchoptions: { sopt: ['cn'] }, editable: true,
edittype: "select",
formatter: 'select',
editoptions: {
dataUrl: // Url to get the list of Gender Item from the MVC controller,
buildSelect:
function (response) {
var data = JSON.parse(response)
s = "<select>"; s += '<option value="0">--Select Gender--</option>';
$.each(data, function (i, item) {
s += '<option value="' + item.GenderTypeID + '">' + item.GenderTypeName + '</option>';
})
s += '</select>';
return s;
}
}
},
});
现在我试图将选定的值发布到我的视图模型。我的观点模型如下。
public class CreateItemViewModel
{
public int ItemID { get; set; }
public string ItemName { get; set; }
public int GenderTypeId { get; set; }
}
我试图张贴到我的行动
[HttpPost]
public ActionResult Create(CreateItemViewModel itemModel)
{
// Code
}
但我的运气不好的价值没有得到分配给GenderTypeId财产。任何人都可以确定我出错的地方。
在此先感谢
您需要给该元素一个名称属性以匹配您的模型属性名称:'
感谢@StephenMuecke的快速响应。我尝试添加名称属性。但它不适合我。 –
你是什么意思_it不工作_?没有'name'属性的表单控件不会回发它的值。 –