如果在 webgrid 中验证失败则显示图像

Displaying image if Validation failed in webgrid

我将如何显示图像(一个或多个)icon/image 基于 Webgrid 中的验证失败,代码如下

下面的代码未经任何验证就显示出来。

 @grid.GetHtml(
        displayHeader: false,
        columns: grid.Columns(
                grid.Column(header: "Serial Number", format: @<input type="text" id="SerialNumber" name="serialNumber_@(item.WebGrid.Rows.IndexOf(item))" value="@item.SerialNumber" /> 
            ));

如果验证失败,我想在 <input 旁边显示图标。

我试过这样做:

grid.Column(header: "Serial Number", format: @<input type="text" id="SerialNumber" name="serialNumber_@(item.WebGrid.Rows.IndexOf(item))" value="@item.SerialNumber" />**@if(item.SerialNumberFailed !=null) {<div><img src=\"failed.gif\" /></div>}**)

我想通了 - 希望这会对其他人有所帮助。

grid.Column(header: "Serial Number", format: (item) =>
{
int row = item.WebGrid.Rows.IndexOf(item);
string value = item.Location;
if (!string.IsNullOrEmpty(item.ValidationFailed.LocationValidationFailed))
{
return Html.Raw(string.Format("
<input type=\"text\" id=\"Serial Number\" name=\"location_{0}\" value=\"{1}\" />
<div class=\"input-group\">
    <span class=\"fa fa-chain-broken redcolor\" title=\"wrong Serial Number\" </span>
</div>
", row, value));
}
else
{
return Html.Raw(string.Format("
<input type=\"text\" id=\"Location\" name=\"location_{0}\" value=\"{1}\" />", row, value));
//
}
}),