Передача формы в контроллер MVC с использованием AJAX - PullRequest
0 голосов
/ 20 ноября 2018

Хотите узнать, как передать форму контроллеру MVC с помощью AJAX.Я пробовал различные методы, такие как JSON.stringify, у меня ничего не работает.Мое входное имя является массивом.Например, Received [0] .basketball, Received [1] .basketball, Received [2] .basketball.Таким образом, список должен иметь Count = 3, но список будет становиться пустым.

UPDATE: включить идентификатор формы

public ActionResult Validate(List<Stuff> item)
{
   //null
}

@using (Html.BeginForm("Test", "Test", FormMethod.Post, new { id = "form" }))
{
    <input name="Receive[0].basketball" id="basketball' + x + '" value=""/>
    <input name="Receive[0].ball" id="ball' + x + '" value=""/>
    <input name="Receive[1].basketball" id="basketball' + x + '" value=""/>
    <input name="Receive[1].ball" id="ball' + x + '" value=""/>
}

$.ajax({
        type: "POST",
        url: "../../Validate",
        dataType: 'json',
        data: {
            item:  $('#form').serializeArray(),
        },
        success: function (result) {

        }
    });

Ответы [ 2 ]

0 голосов
/ 20 ноября 2018
 var form = $('#form');
 var formData = $(form).serialize();

 $.ajax({
            type: 'POST',
            url: $(form).attr('action'),
            data: formData,
            success: function (result) 
        {

    }
});
0 голосов
/ 20 ноября 2018

Вы можете использовать serialize() здесь

var datastring = $("#form").serialize();
$.ajax({
        type: "POST",
        url: "../../Validate",
        dataType: 'json',
        data: datastring,
        success: function (result) {

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