Asp.net 为什么有些字段在有模型错误时不显示红色边界

Asp.net 为什么有些字段在有模型错误时不显示红色边界,asp.net,asp.net-mvc,html,razor,Asp.net,Asp.net Mvc,Html,Razor,我正在开发一个asp.NETMVC5Web应用程序。我的编辑/创建视图中有以下内容,用于显示名为ILIOP和Comment的两个字段: <div> <span class="f"> @Html.DisplayNameFor(model=>model.Server.ILOIP)</span> @Html.EditorFor(model =>model.Server.ILOIP) @Html.ValidationMessage

我正在开发一个asp.NETMVC5Web应用程序。我的编辑/创建视图中有以下内容,用于显示名为
ILIOP
Comment
的两个字段:

<div>
    <span class="f">  @Html.DisplayNameFor(model=>model.Server.ILOIP)</span>
    @Html.EditorFor(model =>model.Server.ILOIP)
    @Html.ValidationMessageFor(model =>model.Server.ILOIP)
</div>

<div>
    <span class="f">@Html.DisplayNameFor(model=>model.Server.Comment)</span>
    @Html.TextAreaFor(model=>model.Server.Comment,new { @class = "textArea"})

    @Html.ValidationMessageFor(model =>model.Server.Comment)
</div>
现在,如果这两个字段(ILIOP&Comment)有错误,则Comment字段周围将出现一个红色边框,而ILIOP不会,如下所示:-

下面是首次为2个字段呈现视图时的标记(无错误):


以下是两个字段显示错误时的标记:-

 <input class="input-validation-error text-box single-line" data-val="true" 
        data-val-length="The field ILOIP must be a string with a maximum length of 20." 
        data-val-length-max="20" id="Server_ILOIP" name="Server.ILOIP" 
        type="text" value="4" />
<span class="field-validation-error" data-valmsg-for="Server.ILOIP" 
      data-valmsg-replace="true">Current value: 3</span>

<textarea class="input-validation-error textArea" cols="20" data-val="true" 
          data-val-length="The field Comment must be a string with a maximum length of 256." 
          data-val-length-max="256" id="Server_Comment" 
          name="Server.Comment" rows="2">
</textarea>

<span class="field-validation-error" data-valmsg-for="Server.Comment" data-valmsg-replace="true"> Current Value: 3</span>

现值:3
现值:3

那么,有谁能告诉我们,当ILIOP字段出现相关错误时,它周围没有显示红色边界的原因是什么,当注释字段显示红色边框时?

我怀疑页面的CSS的定义方式是,当类输入验证错误和类textarea都在元素上时,textarea元素将获得红色样式

作为对我假设的初步检验,看看如果你改变了会发生什么

@Html.EditorFor(model =>model.Server.ILOIP)

然后使用此更改重试测试用例。进行此更改后,您可能必须重新生成源代码并清除浏览器的缓存

 <input class="input-validation-error text-box single-line" data-val="true" 
        data-val-length="The field ILOIP must be a string with a maximum length of 20." 
        data-val-length-max="20" id="Server_ILOIP" name="Server.ILOIP" 
        type="text" value="4" />
<span class="field-validation-error" data-valmsg-for="Server.ILOIP" 
      data-valmsg-replace="true">Current value: 3</span>

<textarea class="input-validation-error textArea" cols="20" data-val="true" 
          data-val-length="The field Comment must be a string with a maximum length of 256." 
          data-val-length-max="256" id="Server_Comment" 
          name="Server.Comment" rows="2">
</textarea>

<span class="field-validation-error" data-valmsg-for="Server.Comment" data-valmsg-replace="true"> Current Value: 3</span>
@Html.EditorFor(model =>model.Server.ILOIP)
@Html.EditorFor(model =>model.Server.ILOIP, new { @class = "textArea"})