我目前正在编写js脚本,以获取DOM元素并将其推送到我的数据库中。
基本上,我想获取购物车中产品的价格,名称和网址。
我无法找到使用jquery遍历我的购物车和console产品的方法。分别记录它们的名称,价格和url。
我知道自己在.each函数中做错了事,因为我没有使用ojb。经过3个小时的奋斗,我仍然没有找到一种获得预期结果的方法,例如:
名称1 网址1 price1
名称2 网址2 price2
当前我得到了(假设我的购物车中有两个产品):
name1name2 url1url2 price1price2
name1name2 url1url2 price1price2
这是我的代码,当我将其粘贴到chrome控制台中时,会得到上述结果:
$.get(window.location.href, function(data){
$("tr.woocommerce-cart-form__cart-item.cart_item").each(function(i, obj) {
const name = $('td.product-name').text();
console.log(name);
const url = $('a.woocommerce-LoopProduct-link.woocommerce-loop-product__link').attr('href');
console.log(url);
const price = $('span.woocommerce-Price-amount.amount').text();
console.log(price);
})
})
如果有人能把我从这场斗争中释放出来,我将非常感激:-)
答案 0 :(得分:1)
尝试将obj
添加为jQuery选择器的第二个参数:
const name = $('td.product-name', obj).text();
const url = $('a.woocommerce-LoopProduct-link.woocommerce-loop-product__link', obj).attr('href');
const price = $('span.woocommerce-Price-amount.amount', obj).text();
这告诉jQuery仅在obj
迭代中的当前each
中进行搜索。