我想使用(引導)模式來顯示翻譯對話框,但它給出了錯誤的名稱。 在瀏覽器源代碼中,它顯示NameTranslations [0] .Translation而它必須是NameTranslations [0] .Translation(NameTranslation和[i]之間沒有點)。MVC輸入名稱錯誤
某些代碼:
查看/共享/ EditorTemplate/翻譯 .cshtml
@model List<Data.ViewModels.Shared.TranslationViewModel>
@for (var i = 0; i < Model.Count; i++)
{
@Html.TextBoxFor(m => Model[i].Translation)
}
創建 .cshtml
@Html.EditorFor(model => Model.NameTranslations,"Translation")
BrowserResult
<input id="NameTranslations__0__Translation" name="NameTranslations.[0].Translation" type="text" value="">
除了名稱約定是錯誤的,一切都很好。如果我刪除了瀏覽器代碼中的點,它已經在控制器中發佈了。
和迭代:
我嘗試這樣@ Html.TextBoxFor(M =>模型[I] .Translation,新的{名稱=模型[I] .Translation}) 但結果是相同的 – PJDW 2014-10-09 11:43:31
然後嘗試分配值存入本地如var varName = Model [i] .Translation或tempName = Model [i] .Translation +「_」+ i,並將tempName分配給name屬性。如果仍然不工作,嘗試編輯運行時的值並查看編輯後的值是否已分配 – Oasis 2014-10-09 11:48:47