30

我使用 Razor 创建了一个文本框,并尝试value如下设置。

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", value= "3" })

我试过value附加@

@Html.TextBoxFor(model=> model.Destination, new { id = "txtPlace", @value= "3" })

即使它呈现input空的html标签value

<input id="txtPlace" name="Destination" type="text" value 
   class="ui-input-text ui-body-c ui-corner-all ui-shadow-inset ui-mini" >

做错了什么?

4

6 回答 6

74

问题是您使用的是小写的 v。

您需要将其设置为 Value ,它应该可以解决您的问题:

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", Value= "3" })
于 2012-12-21T12:36:27.067 回答
10

我尝试替换valueValue并成功了。它现在已经设置了valueininput标签。

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", Value= "3" })
于 2012-12-21T12:32:15.977 回答
8

它会写出你的财产的价值model.Destination

这是设计使然。在返回视图之前,您需要在控制器中使用所需的值填充 Destination 属性。

于 2012-12-21T12:15:54.013 回答
6

我尝试替换valueValue并成功了。它现在已经设置了valueininput标签。

于 2013-04-26T08:45:53.883 回答
4

这对我有用,在 MVC5 中:

@Html.TextBoxFor(m => m.Name, new { @class = "form-control", id = "theID" , @Value="test" })
于 2015-09-02T10:46:49.500 回答
0

Tries with following it will definitely work:

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", Value= "3" })

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", @Value= "3" })

<input id="txtPlace" name="Destination" type="text" value="3" class="ui-input-text ui-body-c ui-corner-all ui-shadow-inset ui-mini" >

于 2018-10-03T12:43:33.280 回答