Ajax返回[object object]输出



我有一个cartItem变量,其中包括标题、价格等。当我单击"添加到购物车"按钮时,我会发出AJAX请求,但它会返回[object Object]输出,而不是标题和价格。

let cartTitle = $('.card-title', addCartItem);
let cartDescription = $('.card-description', addCartItem);
let cartPrice = $('.price', addCartItem);
var id = this.dataset.productId
$.ajax({
type: 'GET',
url: ('/getData'),
data: {
id: id
},
success: function(data) {
cartTitle.text(data.title)
cartPrice.text(data.price)
cartDescription.text(data.description)
$('tbody').prepend(cartItem)
}
})

cartItem是一个对象。您需要创建一个从其属性到prepend()tbody的字符串。

此外,您需要将<tr>元素附加到tbody,因此titleprice值需要封装在其中,以确保您创建的HTML是有效的。试试这个:

success: function(data) {
cartTitle.text(data.title)
cartPrice.text(data.price)
cartDescription.text(data.description)
$('tbody').prepend(`<tr><td>${cartItem.title}</td><td>${cartItem.price}</td></tr>`);
}

最新更新