Условная отмена формы ASP.NET MVC 2 - PullRequest
0 голосов
/ 01 марта 2011

Я пытаюсь запустить некоторый javascript перед отправкой формы обратно на сервер.В этом javascript я либо разрешу публикацию, либо не буду опираться на некоторую логику проверки в функции javascript.В другом месте я читал, что для предотвращения появления поста в форме все, что мне нужно сделать, это вернуть false из моей функции javascript.Я пытаюсь это в приведенном ниже коде без удачи.Я добавил предупреждение, чтобы доказать себе, что функция вызывается.Может кто-нибудь сказать мне, что я делаю не так?

<script type="text/javascript">
function validateOtherAndComment() {
    alert("validateOtherAndComment called");
    return false;
}
</script>
<h2>Create</h2>

<%
    using (Html.BeginForm("Create", "Home", FormMethod.Post,
                          new
                              {
                                  onsubmit = "validateOtherAndComment();",
                              }))
    {%>
    <%=Html.ValidationSummary(true)%>

    <fieldset>
        <legend>New Event</legend>

        <div class="editor-label">
            <%=Html.Label("Comment (max 250)")%>
        </div>
        <div class="editor-field">
            <%=Html.TextArea("commentTextArea", "", 7, 40, new object())%>
            <%=Html.ValidationMessage("comment")%>
        </div>

        <p>
            <input type="submit" value="Create" />
        </p>
    </fieldset>

<%
    }%>

1 Ответ

2 голосов
/ 01 марта 2011

Попробуйте так:

using (Html.BeginForm(
    "Create", 
    "Home", 
    FormMethod.Post,
    new {
        onsubmit = "return validateOtherAndComment();"
    }))

Обратите внимание на оператор return.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...