我與節點的js玩弄和我一直在建立一個應用程序作爲一個學習的過程,在這個程序,我想通過從HTML表單發送數據jQuery/AJAX並讓Node Js/Express接收和處理數據。接收陣列形式的數據作爲JSON的jQuery發送和接收節點的js
HTML低於用一系列這些輸入信號組的:
<form action="/nodeRoute" method="post" id="myFormID">
<div class="input-group col-xs-4">
<input type="text" class="form-control input-sm" name="field1[]" />
<span class="input-group-addon">-</span>
<input type="text" class="form-control input-sm" name="field2[]" />
</div>
</form>
在jQuery的端我送像這樣的數據:
$('#myFormID').submit(function(event) {
event.preventDefault();
var formData = $('#myFormID').serializeArray();
// Send AJAX request.
$.ajax({
type: "POST",
url: "/nodeRoute",
data: JSON.stringify({formData}),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data) {
console.log('Success');
},
failure: function(err) {
console.log("Failure", err);
}
});
});
在節點端我使用router.use(bodyParser.json());
和輸出console.log(req.body.formData);
。我得到的是如下:
[ { name: 'field1[]', value: '12' },
{ name: 'field1[]', value: '34' },
{ name: 'field2[]', value: '56' },
{ name: 'field2[]', value: '78' } ]
我想的是:
[ { field1: [12,34], field2: [56,78] } ]
這可能嗎?
什麼是你的HTML是什麼樣子? – ChrisG
我已修改原始帖子以包含正在使用的表單的示例。 –
發送數據的格式是什麼?我的意思是請求數據看起來如何? –