我正在尝试使用默认值填充输入文本字段,但是当视图呈现时,默认值不会应用于输入文本字段。
重要细节
我将值从控制器操作传递到ViewBag
在视图页面上调试时,我看到ViewBag具有我需要的默认值
如果我在视图的输入文本字段中正确设置了默认值,有人可以告诉我吗?
由于
以下是我要填充的输入文本框:
<div class="editor-field">
@Html.EditorFor(model => model.SearchRadius, new { @Value = ViewBag.SearchRadius})
</div>
答案 0 :(得分:2)
如果您将EditorFor更改为TextBoxFor它应该可以工作,因为editorfor没有对您正在尝试的内容进行任何重载。 但是我建议您在控制器操作中设置默认值model.SearchRadius
,而不是设置欺骗视图包项目:
控制器操作:
public ActionResult Index() {
var model = new MyViewModel();
model.SearchRadius = "Whatever";
return View();
}
<强>剃刀强>:
<div class="editor-field">
@Html.EditorFor(model => model.SearchRadius)
</div>
答案 1 :(得分:1)
请你试试
<div class="editor-field">
@Html.TextBoxFor(model => model.SearchRadius, new { @Value = ViewBag.SearchRadius})
</div>
请注意@Value中的'V';它是一个首都。出于某种原因@value dosent似乎有效