Я пытаюсь создать динамический элемент управления в приложении asp.net mvc 4. Я хочу, когда я отправлю, я хочу подтвердить обязательные поля. Так что давайте скажем, что существует тип поля Checkbox
и его обязательный. Я хочу убедиться, что это проверено перед отправкой. Нужен ли мне jquery для проверки, или это можно сделать любыми другими способами?Проверка динамических элементов управления в asp.net mvc4
вид Модель
public class SignupViewModel : IValidatableObject
{
public List<MembershipControls> Controls { get; set; }
public List<Groups> Groups { get; set; }
}
Модель
public class Groups
{
public virtual int Id { get; set; }
public virtual string GroupTitle { get; set; }
}
public class MembershipControls
{
public virtual int Id { get; set; }
public virtual string UserId { get; set; }
public virtual string ControlType { get; set; }
public virtual string Caption { get; set; }
public virtual string Name { get; set; }
public virtual string Mandatory { get; set; }
public virtual string Content { get; set; }
public virtual string GroupTitle { get; set; }
public virtual string RadioButtonOptions { get; set; }
public virtual string SelectOptionValues { get; set; }
public virtual string SelectOptionText { get; set; }
}
Посмотреть
@foreach (var groups in Model.Groups)
{
<label style="font-weight:bold">@groups.GroupTitle</label>
<div style=" border: 1px solid #CCCCCC;padding:5px">
@foreach (var row in Model.Controls.Where(r => r.GroupTitle == groups.GroupTitle))
{
<div style="padding:7px">
@if (row.ControlType == "Single Line Text")
{
<label>@row.Caption</label>
<input type="text" name="@row.Name" />
}
else if (row.ControlType == "Multi Line Text")
{
<label>@row.Caption</label>
<textarea name="@row.Name"></textarea>
}
else if (row.ControlType == "Yes/No Choice(Radio Buttons)")
{
<div>
<label>@row.Caption</label>
 
<input type="radio" name="@row.Name" value="Yes" />   Yes
 
<input type="radio" name="@row.Name" value="No" />   No
</div>
}
else if (row.ControlType == "Checkbox")
{
<div>
<input type="checkbox" name="@row.Name"/> @row.Caption
</div>
}
else if (row.ControlType == "Date")
{
<div>
<label>@row.Caption</label>
<input type="date" name="@row.Name"/>
</div>
}
</div>
}
</div>
}
То, что вы пытаетесь сделать, не имеют никакого смысла ... вы хотите переместить asp.mvc определение вида на свой странный «динамический контроль». Не делай этого! – DaniCE
его мое требование построить динамическое управление. в основном мне нужно дать возможность пользователю определить, какие элементы управления они хотят построить на форме. –