1

我正在尝试使用默认值填充输入文本字段,但是当视图呈现时,默认值不会应用于输入文本字段。

重要细节

我将值从控制器操作传递到 ViewBag

在查看页面调试的时候,看到ViewBag有我需要的默认值

有人可以告诉我是否在视图的输入文本字段中正确设置了默认值吗?

谢谢

这是我要填充的输入文本框:

 <div class="editor-field">
        @Html.EditorFor(model => model.SearchRadius, new { @Value = ViewBag.SearchRadius})
</div>
4

2 回答 2

3

如果您将 EditorFor 更改为 TextBoxFor 它应该可以工作,因为 editorfor 对您正在尝试的内容没有任何重载。我建议在您的控制器操作中设置默认值,model.SearchRadius而不是设置 dupe viewbag 项:

控制器动作

public ActionResult Index() {
    var model = new MyViewModel();
    model.SearchRadius = "Whatever";
    return View();
}

剃须刀

<div class="editor-field">
    @Html.EditorFor(model => model.SearchRadius)
</div>
于 2013-06-24T00:49:11.213 回答
1

你能试试吗

<div class="editor-field">
        @Html.TextBoxFor(model => model.SearchRadius, new { @Value = ViewBag.SearchRadius})
</div>

请注意@Value 中的“V”;它是一个资本。出于某种原因,@value dosent 似乎有效

于 2013-06-23T23:59:01.197 回答