Я все еще новичок в jQuery и пытаюсь настроить плагин jQuery.Validate, чтобы он отображал все сообщения об ошибках под кнопкой отправки, а не все в документе. У меня есть таблица опций с флажком в каждой строке. Сообщение об ошибке «Нет флажка выбрано» отображается в первой строке таблицы, что может привести к путанице среди пользователей.
Есть ли способ определить «статический путь» к тегу, чтобы его всегда можно было найти? Или что я делаю не так?
Вот что я пытаюсь сделать:
$("#form1").validate({
rules: {
"CbSelect[]": {
required: true,
minlength: 1
}
},
messages: {
"CbSelect[]": {
required: "Please select at least one employee.",
minlength: "Please select at least one employee."
}
},
errorContainer: "#errorList",
errorLabelContainer: "#errorList ul",
wrapper: "li",
debug: true
});
Вот мой код только с соответствующими частями:
<% using (Html.BeginForm("Display", "Supervisor", FormMethod.Post, new { Id = "form1" }))
{ %>
<%= Html.DropDownList("DropDownAction", new SelectList(Model.Actions, "Value", "Text"), "(Select)", new { Class = "required" })%>
<input type="submit" value="Submit" />
<div class="errorList">
<ul>
</ul>
</div>
<fieldset>
<table id="employees">
<tr id="rowHeader">
<th style="text-align: center;">
<input type="checkbox" class="checkall" />
</th>
...
</tr>
<% foreach (var item in Model.Timesheets)
{ %>
<tr id="<%= Html.Encode(item.Id) %>">
<td style="text-align: center;">
<input type="checkbox" name="CbSelect[]" class="selected" value="<%= Html.Encode(item.Id) %>" />
</td>
...
</tr>
<% } %>
</table>
</fieldset>
<% } %>