Wie wird das Modell von der Ansicht an den Controller übergeben, wenn Sie in MVC auf die Schaltfläche klicken?

Index - Anzeigen

@model SendAFaxWeb.Models.Send
//view start here
<body>
    <div>
        <h2>Test Upload File</h2>
        <form action="@Url.Action("Index", "Home")" id="form" method="post" enctype="multipart/form-data">
            @Html.AntiForgeryToken()
            <div class="form-group">
                <label>Fax Number:</label>
                @Html.TextBoxFor(m => m.Recipients[0].Number)
             </div>

            <div class="form-group">
                <label>Select File:</label>
                <input type="file" name="files" id="file" multiple="multiple" onchange="this.form.submit();" />
            </div>

            <div>
              @if (Model != null)
                 {
                   foreach (var item in Model.Documents)
                    {
                       <li>FileName: @item.Name</li>
                    }
                  }
             </div>
    </form>

    <input type="submit" name="send" value="Send" id="btnSend" />

    </div>
</body>

Javascript- das Javascript funktioniert nicht

<script type="text/javascript">
    $(document).ready(function () {
     $("#btnSend").click(function () {
        alert("button click");
        e.preventDefault();

        var model = @Html.Raw(Json.Encode(Model))
        $.ajax({
            type: 'post',
            url: '@Url.Action("Send", "Home")',
            data: JSON.stringify({ contact: model }),
            contentType: 'application/json; charset=utf-8',
            dataType: "json",
            success: function (data) {
                alert(data);
            }
        });
        });
    });

</script>

Regle

public ActionResult Send(Send contact)
{
    //some code here
}

Ich habe versucht, das Modell mit Javascript an den Controller zu übergeben, aber es funktioniert nicht. Die Warnung in Javascript auch nicht Popup. Kann mir jemand sagen, was mit dem Code nicht stimmt.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage