我試圖在發佈/提交時在我的模型中獲得GroupGameId
的值,但該值顯示爲0(即使在使用HiddenFor
後)。我已經驗證HttpGet
正確設置GroupGameId
的值,並且它被視圖接收。在嵌套視圖模型中設置Html.HiddenFor屬性
的ViewModels
public class GameAssignerModel
{
// Other properties here....
public List<GameAssignerTableModel> GameAssignerTable { get; set; }
}
public class GameAssignerTableModel
{
public int GroupGameId { get; set; }
[Required]
public string GameName { get; set; }
[Required]
public bool IsAssigned { get; set; }
public DateTime? UnAssignedDate { get; set; }
}
查看
@for (int i = 0; i < Model.GameAssignerTable.Count(); i++)
{
@Html.HiddenFor(m => m.GameAssignerTable[i].GroupGameId)
<tr>
<td>@Model.GameAssignerTable[i].GameName</td>
<td>
@Html.EditorFor(m => m.GameAssignerTable[i].IsAssigned)
</td>
<td>
@Html.TextBoxFor(m => m.GameAssignerTable[i].UnAssignedDate, new {id = "UnassignedDate" + i})
</td>
</tr>
}
編輯:數據正在通過Ajax提交了第一次,我不知道,如果該事項。我已驗證它在我的控制器中正在執行POST操作,並且模型數據的其餘部分正在正確提交。
if ($("#assignGames").valid()) {
$.ajax({
url: this.action,
type: this.method,
data: $(this).serialize(),
success: function (result) {
if (result.success) {
$("#assignModal").modal("hide");
location.reload();
}
的
<td>
標籤*我想發佈/提交時要得到我的模型GroupGameId值內解決,但該值顯示0 *您必須添加你的發佈方法 –當調試時,我把鼠標放在模型上,或者將模型添加到監視列表中,我可以看到GroupGameId的值是0.它只是一個帶有HttpPost的ActionResult,模型作爲參數 –
發佈您的Action方法,並將您的表格封裝在表單標記中? – mxmissile