| Цитата(Competitor @ 28.9.2011, 11:36) | Всем привет, На странице есть форма для конкретной модели. Все поля формы смаплены на модель. И если сделать форме сабмит, то полностью заполненная модель придет в метод контроллера. Но мне теперь нужно отправлять форму не через сабмит, а через jquery метод post. Как мне это сделать? я пока пробовал так:
| Код | var form = $('#myTestForm'); var srlzdform = form.serialize(); $.post("myTestUrl", { myTestModel: srlzdform }).success(function (data) { alert(data); });
|
Однако, в методе контроллера получаю null в параметре myTestModel.
Вот примерно как выглядит код формы:
| Код | @model MyTestModel @using (Html.BeginForm("Method1", "Controller1", FormMethod.Post, new {id = "myTestForm"})) { <div st yle="max-width:600px;"> <div>@Html.ValidationMessageFor(model => model.Name)</div> <div>@Html.ValidationMessageFor(model => model.Address)</div> </div> <div>Имя*</div> <div> <input data-val="true" data-val-required="Необходимо заполнить поле" id="Name" type="text" class="param-input" name="Name" value="@(Model.Name)" /> </div> <div>Адрес*</div> <div> <input data-val="true" data-val-required="Необходимо заполнить поле" id="Address" type="text" class="param-input" name="Address" value="@(Model.Address)" /> </div> }
|
|
А чем такой вариант не подходит
| Код | <% using (Ajax.BeginForm( "Action", "Control", new AjaxOptions { HttpMethod = "post", OnComplete = "ClearForm()", InsertionMode = InsertionMode.Replace })) {%> <input type="text" name="name" /> <input type="submit" name="submit" value="submit" /> <% } %>
|
|