Вопрос

Я использую ajax.beginform, чтобы отправить форму ANS XVAL для обеспечения соблюдения проверки

Проблема Post Ajax Post производится даже при наличии ошибок на нем ошибки. Я знаю, что валидация на стороне клиента работает, потому что она отображает правильные сообщения об ошибках и что нет, но почему он думает, что все в порядке, чтобы сделать запрос AJAX в любом случае, что я не понимаю.

Я даже попытался положить causesvalidation = true Внутри вкладки «Отправить», но форма все еще подана.

    <% using (Ajax.BeginForm("SuggestTemp", new AjaxOptions { InsertionMode = InsertionMode.Replace, UpdateTargetId = "Result" }))
       {%>

        <table>
         <tr>
        <td style="text-align:right">
            Title
        </td>
        <td>
            <%= Html.TextBox("Upload.Title")%>
            <%= Html.V
alidationMessage("Upload.Title")%>
        </td>
        </tr> <tr><td><%=Html.ClientSideValidation<Upload>("Upload") %></td><td></td></tr>
        <tr><td></td><td><input type = "submit" causesvalidation = "true"  value = "Suggest " class = "btn"/></td></tr> 
      </table>
      <div id = "Result"><%=ViewData["SuggestStatus"]%></div> 
Это было полезно?

Решение

попытаться поставить $("#yourFormId").validate() к тому OnBegin параметр

Бывший:

<%
using (Ajax.BeginForm("SuggestTemp", "yourControllerName", new{}, new AjaxOptions
{
    HttpMethod = "POST",
    OnBegin = "function(){$('#myForm').validate();}"
},
new { id = "myForm" }){ %>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top