我从ajax文件中得到一个数组,其中包含要在订单中添加的产品数组。我想在orderId列中将orderProducts表和order表相互链接。但是我在app.get()中获取了数组,而在app.post()中却无法获取数组以发布数据。.在页面中选择了产品,在另一个页面中选择了订单数据。
我的Ajax代码
$('#save').click(function () {
var orderProduct = new Array();
$("#review-products input[type=checkbox]:checked").each(function () {
var row = $(this).closest("tr");
var message0 = row.find('#check').val();
var message1 = row.find('.name').text().trim();
var message2 = row.find('.currency').text().trim();
var message3 = row.find(".foo").val();
const result = {check: message0,name: message1,p: message2,q: message3 ,total: message2 * message3}
var hh = orderProduct.push(result);
});
$.ajax({
type: 'GET',
data: {selectedProduct: orderProduct },
url: '/order/product',
success: function (data) {
console.log(data);
}
})
})
路线
app.get('/order/product' , getProduct)
app.post('/postOrder' , postOrder);
getProduct: (req , res ) => {
var products = req.query.selectedProduct;
console.log(products);
},
postOrder: (req ,res) => {
res.redirect('/')
}
答案 0 :(得分:0)
尝试使用body-parser
var bodyParser = require('body-parser')
...
app.use(bodyParser )
// then
getProduct: (req , res ) => {
console.log(req.body);
}
也改变
$.ajax({
type: 'POST',
...
})
答案 1 :(得分:0)
我在get和post函数中都使用了全局变量来使用相同的变量