我从ajax文件中获取一个数组,其中包含一个产品数组,我想按顺序添加它。我想在名为orderId的列中将订单产品和订单表相互链接。但是我在app.get((中获取数组,并且无法在 app.post((中获取数组以发布数据。在页面中选择产品,在另一个页面中选择订单数据。
我的阿贾克斯代码
$('#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('/')
}
尝试使用正文解析器
var bodyParser = require('body-parser')
...
app.use(bodyParser )
// then
getProduct: (req , res ) => {
console.log(req.body);
}
也改变
$.ajax({
type: 'POST',
...
})
我使用全局变量在get和post函数中使用相同的变量