Próbuję wysłać tablicę JSON do kontrolera MVC. Ale bez względu na to, co próbuję, wszystko ma wartość 0 lub zero.Post JSON array do kontrolera mvc
Mam tę tabelę, która zawiera pola tekstowe. Potrzebuję ze wszystkich tych pól tekstowych, że to ID i wartość jako obiekt.
To mój Javascript:
$(document).ready(function() {
$('#submitTest').click(function (e) {
var $form = $('form');
var trans = new Array();
var parameters = {
TransIDs: $("#TransID").val(),
ItemIDs: $("#ItemID").val(),
TypeIDs: $("#TypeID").val(),
};
trans.push(parameters);
if ($form.valid()) {
$.ajax(
{
url: $form.attr('action'),
type: $form.attr('method'),
data: JSON.stringify(parameters),
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (result) {
$('#result').text(result.redirectTo)
if (result.Success == true) {
return fase;
}
else {
$('#Error').html(result.Html);
}
},
error: function (request) { alert(request.statusText) }
});
}
e.preventDefault();
return false;
});
});
To jest mój kod Widok:
<table>
<tr>
<th>trans</th>
<th>Item</th>
<th>Type</th>
</tr>
@foreach (var t in Model.Types.ToList())
{
{
<tr>
<td>
<input type="hidden" value="@t.TransID" id="TransID" />
<input type="hidden" value="@t.ItemID" id="ItemID" />
<input type="hidden" value="@t.TypeID" id="TypeID" />
</td>
</tr>
}
}
</table>
ten kontroler im próbuje odbierać dane:
[HttpPost]
public ActionResult Update(CustomTypeModel ctm)
{
return RedirectToAction("Index");
}
co ja Robię źle?
Pokaż, jak wygląda Twój 'CustomTypeModel'. –
której wersji mvc używasz? –
Wygląda na to, że może brakować atrybutów 'name' z nazwami właściwości, które próbujesz POST. Czy możesz publikować rzeczywiste dane, które publikujesz? Rzeczywiste żądanie POST? – rae1