這是基於myModel隱藏字段不會傳遞值到控制器
public class myModel : myBaseModel
{
public string AccountName { get; set; }
public string BankName { get; set; }
public string BranchCode { get; set; }
}
我收到帳戶名,BANKNAME和BranchCode從視圖與textBoxFor
@Html.LabelFor(m => m.AccountName, GetContentBody(101111))
@Html.TextBoxFor(m => m.AccountName)
@Html.ValidationMessageFor(m => m.AccountName)
問題是我不需要Accountname文本框,但是我不允許從模型中刪除AccountName,我應該在視圖中分配這個值。
所以我計劃改變這個文本框與html.hiddenFor與它的價值,問題是hiddenfield是將帳戶名稱傳遞給控制器作爲null。
**我的問題是,爲什麼hiddenfield是通過其值設爲空?**
我刪除了這個
@Html.TextBoxFor(m => m.AccountName)
並補充,而不是它
@Html.HiddenFor(m=>m.AccountName, new { @Value = "defaultUserName" });
並不清楚你的要求?如果你沒有使用/不希望'AccountName'那麼爲什麼它是一個問題,如果它是空的?如果你真的使用它,並希望它是一個隱藏的領域,那麼爲什麼不告訴我們你的代碼與它隱藏,所以我們可以看到它,而不用猜測你做了什麼? – Belogix
問題出現時爲什麼不用'html.hiddenFor'顯示代碼? – Satpal
隱藏字段將獲得您在創建時返回模型時設置的值。如果您將其設置爲空白,它將在帖子上返回爲空。要麼給它創造價值,要麼用JS來改變它。 – user373455