3

它们在网页上看起来很相似,但它们各自的 HTML 却大不相同:

<input id="TEST" name="TEST" type="text" value="this one's filled in, but editor isn't">
<input class="text-box single-line" id="TEST" name="TEST" type="text" value="">

文档Returns an HTML input element for each property in the object that is represented by the expression.Html.Editor _

虽然Html.TextBoxReturns a text input element by using the specified HTML helper and the name of the form field.

这是否意味着您将模型的字符串名称传递给Html.Editor它,然后它将为其每个属性创建一个文本输入,而Html.TextBox' 将只是一个愚蠢的文本输入,在幕后没有其他任何东西?

4

1 回答 1

8

HTML.文本框:

使用指定的 HTML 帮助器和表单字段的名称返回文本输入元素。

HTML.编辑器:

此方法根据正在呈现的属性的数据类型以及该属性是否使用某些属性进行标记,生成不同的 HTML 标记。

  • 如果属性被键入为基本类型(整数、字符串等),则该方法为文本框呈现 HTML 输入元素。

  • 如果属性标记有数据类型属性或 UIHintAttribute 属性,则该属性指定为属性生成的标记。例如,如果属性用 MultilineText 特性标记,则该方法会为多行文本框生成标记。

  • 如果对象包含多个属性,则该方法会为每个属性生成一个字符串,该字符串由属性名称的标记和用于编辑属性值的输入元素组成。
  • 如果属性是布尔值,那么它将加载一个复选框。
于 2012-11-29T18:00:04.223 回答