我正在尝试序列化表单,而不是将<tr>
的值都发送到控制器的action方法,而action方法接受List<CustomerContactInfo>
,但是在进行序列化时,它将只是发送第一个{的值{1}}而非<tr>
,然后模型返回List
。任何人都可以帮助我或为我指出正确的方向:)
表格:
null
JavaScript:
<form id="Myform">
<table>
<tbody id="output">
<tr>
<td>Addresse: <input type="text" name="Addresse[0]" value="Torv 2"></td>
<td>City: <input type="text" name="City[0]" value="borg"></td>
</tr>
<tr>
<td>Addresse: <input type="text" name="Addresse[1]" value="Strand 1"></td>
<td>City: <input type="text" name="City[1]" value="Slage"></td>
</tr>
</tbody>
</table>
</form>
<button type="button" onclick="CreateUsers();">Create</button>
console.log(数据):
<script>
function CreateUsers() {
var model = $("#Myform").serializeArray();
var data = {};
$(model).each(function (index, obj) {
data[obj.name] = obj.value;
});
console.log(data);
var settings = {
"url": '@Url.Action("CreateMultiUsers", "User")',
"method": "POST",
"data": JSON.stringify(data),
"dataType": "json",
"contentType": 'application/json; charset=utf-8'
}
$.ajax(settings).done(function (re) {
console.log(re);
});
}
</script>
操作:
{Addresse[0]: "Torv 2"
Addresse[1]: "Strand 1"
City[0]: "borg"
City[1]: "Slage"}