Как я могу передавать данные из нескольких таблиц HTML в контроллер с помощью jQuery Ajax?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу передавать данные из нескольких таблиц HTML в контроллер с помощью jQuery Ajax?

Сообщение Anonymous »

Я создал страницу с полями заголовка и таблицей HTML. Я использую jquery ajax для отправки данных заголовка и таблицы контроллеру. Хотя запрос достигает контроллера, метод действия получает ноль значения. charset = utf-8 ' и' Application/json; charset = utf-8 ', но в обоих случаях контроллер по-прежнему получает NULL.
function addRow() {
const row = document.createElement("tr");
row.innerHTML = '' +
'' +
'' +
' ' +
' ' +
'-';
document.getElementById("invoiceTable").appendChild(row);
}

function removeRow(button) {
button.closest("tr").remove();
}

function MakeSingleModel() {
const SaleModel = {
CustomerNo: $("#customerNo").val().trim(),
CustomerName: $("#customerName").val().trim(),
};

const Detail = [];

$("#invoiceTable tr").each(function() {
const $row = $(this);
const SaleList = {
ItemNo: $row.find("input[name='itemNo']").val().trim(),
ItemName: $row.find("input[name='itemName']").val().trim(),
Qty: parseInt($row.find("input[name='qty']").val()) || 0,
MRP: parseFloat($row.find("input[name='MRP']").val()) || 0,
Amount: parseFloat($row.find("input[name='Amount']").text()) || 0
};
Detail.push(SaleList);
});

const alldata = {
SaleModel: SaleModel,
DetailList: Detail
};

SaveSale(alldata);
}

function SaveSale(data) {
var data = {
SaleData: data
};

$.ajax({
type: "POST",
url: "/Home/Create/",
data: data,

//contentType: "application/x-www-form-urlencoded; charset=UTF-8",
contentType: "application/json; charset=UTF-8",
dataType: "json",
success: (response) => {
alert(response.saveStatus === "Success" ? "Data successfully saved!" : "Data not saved.");
},
error: (jqXHR, textStatus, errorThrown) => {

alert("Error saving data. See console for details.");
}
});
}

function multi(element) {
const $row = $(element).closest("tr");
const qty = parseInt($row.find(".qty").val()) || 0;
const MRP = parseFloat($row.find(".mrp").val()) || 0;
const sumAmount = qty * MRP;
$row.find(".amount label").text(sumAmount.toFixed(2));
}
< /code>
body {
font-family: Arial, sans-serif;
margin: 20px;
}

.container {
width: 50%;
margin: auto;
}

table {
width: 100%;
border-collapse: collapse;
}

th,
td {
padding: 10px;
border: 1px solid #ccc;
}

input {
width: 100%;
padding: 5px;
}

button {
margin-top: 10px;
padding: 5px 10px;
cursor: pointer;
}

#invoiceTable td input {
width: 150px;
}
< /code>

Sale Invoice

Customer No:


Customer Name:





Item No
Item Name
Qty
MRP
Amount
Action









+



Save

< /code>
[HttpPost]
public JsonResult Create(SaleModel SaleData)
{
return Json(new { value = "", Status = "Success" });
}


Подробнее здесь: https://stackoverflow.com/questions/796 ... query-ajax
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»