0

asp.net Webアプリケーションで、AJAXを使用してフォームを送信しています。送信する前にJavaScriptコードを実行したい。だから私はこれをしました:

@using (Ajax.BeginForm("SaveProductDetails", "Store", new AjaxOptions
{
HttpMethod = "Post",
LoadingElementId = "progress",
OnBegin = "BeforeSubmit()",
OnSuccess = "closeMe()",
OnFailure = "doAlert('An error occurred while trying to save your changes. Please contact your Administrator')"
}))

ただし、問題は、BeforeSubmit()関数を実行した後、送信が停止することです。フォームは送信されていません。

BeforeSubmit()関数に問題はありません。OnBeginで何もしない場合、フォームは正しく送信されます。どんな助けでも大いに感謝されます。

4

1 に答える 1

1

あなたは以下のようなことをすることができます。

コードを表示

    @using (Html.BeginForm("ActionName", "ControllerName", FormMethod.Post, new { @id = "frmId", @name = "frmId" }))
    {
            @*Your code*@
            @*You have to define input as a type button not as a sumit. *@            
            <input value="Submit" type="button" id="btnSubmit" onclick="ValidateUser()" />
    }

    <script type="text/javascript">

    function ValidateUser() {
    // Do your verification here.
    $("#frmId").submit();
    }

</script>
于 2012-06-08T11:40:03.920 に答える