MVC Razor:如果 html 文本框元素内有其他条件
MVC Razor : if else condition inside html textbox element
我正在尝试使用以下代码使用 MVC Razor 创建条件:
@Html.TextBoxFor(m => Model.MyList[i].Value
new { autocomplete = "off",
spellcheck = "false", data_val =
Model.MyList[i].IsRequired.ToString().ToLower(), data_val_required = $"The
field {Model.MyList[i].Description} is required", @:
if(Model.MyList[i].FieldType == 0) { data_val_number = "Please enter
`number" } })`
您可以创建一个 if/else 块来根据 FieldType
生成文本框
@if(Model.MyList[i].FieldType == 0)
{
@Html.TextBoxFor(m => Model.MyList[i].Value
new { autocomplete = "off",
spellcheck = "false", data_val =
Model.MyList[i].IsRequired.ToString().ToLower(), data_val_required = $"The
field {Model.MyList[i].Description} is required", data_val_number = "Please enter
`number" } })`
}
else
{
@Html.TextBoxFor(m => Model.MyList[i].Value
new { autocomplete = "off",
spellcheck = "false", data_val =
Model.MyList[i].IsRequired.ToString().ToLower(), data_val_required = $"The
field {Model.MyList[i].Description} is required"} })`
}
或
使用条件 html 属性:
@{
var myMessage = Model.MyList[i].FieldType == 0 ? "my message" : null;
}
@Html.TextBoxFor(m => Model.MyList[i].Value
new { autocomplete = "off", spellcheck = "false", data_val =
Model.MyList[i].IsRequired.ToString().ToLower(), data_val_required = $"The
field {Model.MyList[i].Description} is required", data_val_number = "@myMessage"
})`
如果@myMessage 为 null,Razor 足够聪明,不会发出 data_val_number。
关于条件属性的一些信息:
https://www.davidhaney.io/mvc4-conditional-html-attributes/
Conditional HTML Attributes using Razor MVC3
MVC 3: Conditionally Adding the Disabled Attribute with the HtmlHelpers
我正在尝试使用以下代码使用 MVC Razor 创建条件:
@Html.TextBoxFor(m => Model.MyList[i].Value
new { autocomplete = "off",
spellcheck = "false", data_val =
Model.MyList[i].IsRequired.ToString().ToLower(), data_val_required = $"The
field {Model.MyList[i].Description} is required", @:
if(Model.MyList[i].FieldType == 0) { data_val_number = "Please enter
`number" } })`
您可以创建一个 if/else 块来根据 FieldType
生成文本框@if(Model.MyList[i].FieldType == 0)
{
@Html.TextBoxFor(m => Model.MyList[i].Value
new { autocomplete = "off",
spellcheck = "false", data_val =
Model.MyList[i].IsRequired.ToString().ToLower(), data_val_required = $"The
field {Model.MyList[i].Description} is required", data_val_number = "Please enter
`number" } })`
}
else
{
@Html.TextBoxFor(m => Model.MyList[i].Value
new { autocomplete = "off",
spellcheck = "false", data_val =
Model.MyList[i].IsRequired.ToString().ToLower(), data_val_required = $"The
field {Model.MyList[i].Description} is required"} })`
}
或
使用条件 html 属性:
@{
var myMessage = Model.MyList[i].FieldType == 0 ? "my message" : null;
}
@Html.TextBoxFor(m => Model.MyList[i].Value
new { autocomplete = "off", spellcheck = "false", data_val =
Model.MyList[i].IsRequired.ToString().ToLower(), data_val_required = $"The
field {Model.MyList[i].Description} is required", data_val_number = "@myMessage"
})`
如果@myMessage 为 null,Razor 足够聪明,不会发出 data_val_number。
关于条件属性的一些信息:
https://www.davidhaney.io/mvc4-conditional-html-attributes/
Conditional HTML Attributes using Razor MVC3
MVC 3: Conditionally Adding the Disabled Attribute with the HtmlHelpers