如何在MVC3中用razor写入输入值

时间:2013-06-06 09:43:23

标签: c# asp.net-mvc-3 razor

我在MVC3项目中使用资源文件用于多语言。

[Display(Name = "Search", ResourceType = typeof(LanguageResources.Lang))]
public string Search { get; set; }

我不能用剃刀写一个输入值。

@Html.LabelFor(o => o.Search)在页面上有效,但我需要写入输入值。

<input class="searchInput" type="text" name="name" value='@Html.ValueFor(o => o.Search)' />

我试过这个但是html页面源中的值为空。

4 个答案:

答案 0 :(得分:3)

使用Razor语法,您可以编写如下代码:

@Html.TextBoxFor(o => o.Search)

如果要在get方法中填充文本框中的值,只需将值分配给Search属性并将模型传递给视图即可。请参阅以下代码:

model.Search = "Hello World";
return View(model);

现在,您将能够看到该文本&#34; Hello World&#34;在页面加载时分配给您的文本框。 enter image description here

答案 1 :(得分:1)

试试这个

<input class="searchInput" type="text" name="name" value='@Model.Search' />

答案 2 :(得分:1)

只需使用

ModelState.Clear();

之前return View(yourmodel);

答案 3 :(得分:0)

您可以尝试这样

在.aspx视图文件中

<%:Html.TextboxFor(o=>o.Search)%>

在剃须刀视图中:

@Html.TextBoxFor(o=>o.Search)

在剃须刀中它也可以像:

@Html.EditorFor(o => o.Search)