您好我仍然是网页设计和JavaScript等语言的新手。
在强类型的cshtml视图中,是否可以仅显示基于复选框的文本字段(文本字段和复选框都强烈键入模型?)我在下面创建了一个示例场景:
样本类:
namespace FruitSurveyNameSpace
{
public class FruitSurvey
{
public bool likesFruit { get; set; }
public string fruitName { get; set; }
}
}
示例cshtml:
@using FruitSurveyNameSpace
@model FruitSurvey
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
Like Fruit? @Html.EditorFor(model => model.likesFruit)
Which Fruit: @Html.EditorFor(model => model.fruitName)
}
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
生成以下html
Survey
likesFruit?
fruitName
与上面的示例场景一样,只有当用户选择他/她喜欢水果(动态)时才输入水果名称才有意义。否则,水果名称输入没有任何意义,不应显示。此外,我们可能强制用户输入水果名称,一旦他/她选择像水果复选框(目前我在非动态生成的字段中使用[必需]属性,并且不确定如果变为动态它是否仍然有效。)
正如我们所看到的,两个值都是模型的强类型,这就是我使用html助手的原因。
有没有办法在不使用JavaScript的情况下这样做?或者如果没有,我应该如何与html助手结合使用?
非常感谢提前。