如何将数据自动完成HTML属性添加到TextBoxFor HTML帮助器?

时间:2011-10-21 06:42:33

标签: asp.net-mvc-3 autocomplete razor

自动填充文本框,用于获取城市自动填充文本框。

我的代码看起来像这样,

<input id="location" type="text" name="q" 
data-autocomplete="@Url.Action("locationSearch", "Home", 
                       new { text = "location" })"/>

现在我想将其转换为剃刀syntex。我试过这个但没有用。

@Html.TextBoxFor(model => model.Location, 
   new { data-autocomplete = Url.Action("locationSearch", "Home")})

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:7)

data-autocomplete是一个HTML属性。首先,在MVC中指定属性时不能使用破折号,因此需要使用data_autocomplete替换数据自动完成。 MVC“足够聪明”,最终结果将读取数据自动完成。

要在文本输入中添加HTML属性,您需要使用以下HTML帮助程序:

@Html.TextBoxFor(model => model.Location, new { data_autocomplete = Url.Action("locationSearch", "Home") })

请按照您的录取率进行工作。

答案 1 :(得分:1)

你可以使用这个

在您的视图中

<select id="location" name="location"></select>

           <input type="submit" value="Send">

实际上是下拉列表,而不是文本框,他们通过css编辑布局

答案 2 :(得分:0)

您应该在Html Attributes参数中使用下划线符号:

@Html.TextBoxFor(model => model.Location, new { data_autocomplete = Url.Action("locationSearch", "Home")})