1

我有一個表格:如何使用禁用的JavaScript更新UI驗證錯誤消息?

using (Html.BeginForm()) 
{ 
    @Html.TextBoxFor(x => x.Name, new { @class = "span8" }) 
} 

型號:

[Required] 
[RegularExpressionAttribute("regex")] 
public string Name { get; set; } 

控制器:

[HttpPost] 
public ActionResult Index(MyModel model) 
{ 
    return View(model); 
} 

如何顯示的名稱文本框中的錯誤消息,並改變CSS樣式如果JavaScript禁用?

我的理解:

@Html.ValidationMessageFor(x => x.Name, "error text", new { style = "backgroundcolor: red;"}) 

將無法​​正常工作?

在輸出HTML中,我可以看到由ValidatorMessageFor生成的範圍,但它具有隱藏此標籤的css類btn-group

回答

0

您應該從控制器添加modelstate驗證錯誤,然後重新顯示錶單。有可能沒有使用javascript

ModelState.AddModelError("elementName", "Error definition"); 
+0

在模型狀態,我確實有錯誤。重新顯示錶單意味着什麼? – Sergejs

+0

return PartialView(「MyView」);您不應該重定向,在這種情況下,模型錯誤會丟失 – karaxuna

+0

我通過添加控制器代碼修改了問題。這是你的意思? – Sergejs