[英]How to clear fields after post back in asp.net mvc?
我想知道如何在asp.net mvc中回發后清除字段? 就像現在當發生驗證錯誤時,字段保持填充用戶輸入的任何內容。 這很好,但是當沒有發生驗證錯誤時,我希望清除所有字段並顯示一條消息。
所以現在我通過使用ViewData顯示成功,但不知道如何清除字段。
嘗試這個:
if(ModelState.IsValid)
{
ModelState.Clear();
}
return View();
菲爾哈克說:
試着打電話
ModelState["value1"].Value = new
ValueProviderResult(null,
string.Empty,
CultureInfo.InvariantCulture);
從控制器操作中返回視圖之前。
這樣做是保留與鍵“value1”相關的所有錯誤,但用空值替換該值。
聽起來像PRG(Post Redirect Get)模式的工作,因為您不希望用戶刷新頁面並再次提交。
為此,我會在您的TempData中放置一條消息或標志,以便您可以在重定向回原始URL時檢查該消息或標志,然后向用戶顯示消息。
在視圖中回發模型時,可以指定模型,新參考。
像這樣的東西。
if (ModelState.IsValid)
{
//Do your stuff here.
yourModel = new Moodel();
return View(yourModel);
}
在這種情況下,所有模型字段都將為空,並且不會在表單中顯示任何內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.