Я разрабатываю приложение MVC.как отправить значения формы, используя вызов ajax, без кнопки отправки
Я хочу отправить форму с помощью функции ajax, не используя стандартное событие нажатия кнопки отправки.
Я хочу передать объект модели вместе со строкой массива (который не связан с объектом модели.)
У меня есть ниже код Создать Посмотреть
@using (Html.BeginForm("Create", "AdviceCreate", FormMethod.Post, new { enctype = "multipart/form-data", id = "frmCreate", onsubmit = "disableSubmitButton()" }))
{ }
$('#create').click(function() {
alert("create")
var count = $(".clsInvoiceId").length;
var invoiceDetailsArray = new Array();
var ledgerDetailsArray = new Array();
var obj = '@Html.Raw(Json.Encode(Model))';
$.ajax({
contentType: 'application/json; charset=utf-8',
url: '@Url.Action("Create", "AdviceCreate")',
type: 'POST',
data:
JSON.stringify({
AdviceCreateVM : obj,
InvoiceDetails : invoiceDetailsArray,
LedgerDetails : ledgerDetailsArray
}),
success: function() {
}
});
});
и ниже кода в контроллере
public ActionResult Create(AdviceCreateVM AdviceCreateVM, string[] InvoiceDetails, string[] LedgerDetails)
{
}
, но в контроллере AdviceCreateVM поставляется как NULL ...
отсутствует?
У вас было предупреждение о 'alert (obj)' перед отправкой? –
показать вывод 'obj' coz, я думаю, вы выводите строку, а связующее устройство модели не может связывать тип с' AdviceCreateVM' –
@ DotNet Dreamer, пожалуйста, объясните, не понял ... – bnil