我想在最初顯示(GET)時在我的表單中的文本框旁邊顯示星號(*) 另外,我希望使用相同的GET/POST時出現錯誤)所以對於GET請求 我傳入一個空的模型,如 return View(new Person());在ASP.NET MVC4中指定Html.ValidationMessageFor的默認消息
稍後,當表單提交(POST),我使用數據註釋,檢查模型狀態和 顯示的錯誤,如果任何 Html.ValidationMessageFor(V => v.FirstName)
對於GET請求,模型狀態有效且沒有消息,因此不顯示星號。 我正在嘗試通過檢查請求類型並打印星號來解決此問題。 @(HttpContext.Current.Request.HttpMethod == 「GET」 「*」:Html.ValidationMessageFor(V => v.FirstName)的ToString())
的問題是,Html.ValidationMessageFor(V = > v.FirstName)的ToString()已被編碼 ,我想從Html.ValidationMessageFor(v => v.FirstName)
獲取原始的HTML或可這裏有一個更好的辦法。 1.您如何在GET請求中顯示默認有用的消息(在表單字段旁邊) - 例如「請輸入IP地址的nnn.nnn.nnn.nnn格式」,然後顯示錯誤(如果有)? 2.什麼是從剃刀的角度來檢查,如果條件和寫入字符串或MvcHtmlString
您是否嘗試過創建自己的自定義HTML助手overri使用ValidationForMessageCustom HTML助手擴展等新的ValidationMessageFor行爲,它本身在呈現給屏幕時會檢查當前請求上下文並打印適當的消息?在幫助程序中使其更具可擴展性,您可以傳遞爲獲取請求而打印的字符串,例如「請以格式輸入IP ...」 – ianaldo21