javascript - 未捕获的类型错误:无法读取未定义的属性“值”(带有 javascript 项目的购物车)
问题描述
所以我正在使用Javascript在购物车上工作,我收到了这个错误:
store.js:21 Uncaught TypeError: Cannot read property 'value' of undefined at updateCartTotal
这是代码:
var removeCartItemButtons = document.getElementsByClassName('btn-danger')
console.log(removeCartItemButtons)
for (var i =0; i < removeCartItemButtons.length; i++) {
var button = removeCartItemButtons[i]
button.addEventListener('click', function(event) {
var buttonClicked = event.target
buttonClicked.parentElement.parentElement.remove()
updateCartTotal()
})
}
function updateCartTotal() {
var cartItemContainer = document.getElementsByClassName('cart-items')[0]
var cartRows = cartItemContainer.getElementsByClassName('cart-row')
var total = 0
for (var i = 0; i < cartRows.length; i++) {
var cartRow = cartRows[i]
var priceElement = cartRow.getElementsByClassName('cart-price')[0];
var quantityElement = cartRow.getElementsByClassName('cart-quantity.input')[0]
var price = parseFloat(priceElement.innerText.replace('$', ''))
var quantity = quantityElement.value()
total = total + (price * quantity)
}
document.getElementsByClassName('cart-total-price')[0].innerText = '$' + total
}
有人可以帮我弄这个吗?谢谢!
解决方案
使用提供的数据执行以下操作
//fix the selector
cartRow.getElementsByClassName('cart-quantity.input')[0]
//to this
cartRow.querySelectorAll('input.cart-quantity')[0];
//change this
var quantity = quantityElement.value()
//to this
var quantity = quantityElement.value
推荐阅读
- javafx - 向页面添加更多项目(分页 javafx)
- java - setImageRessource 在计时器 android studio 中不起作用
- ios - 如何从照片中加载单个图像
- python - 使用 Bottle 运行服务器后打开 Web 浏览器
- javascript - Javascript 电子邮件名称/域长度
- three.js - 如何在 Three.js 中绘制几何上的各种纹理
- json - 我需要一种可靠的方法来计算资源的 nbr
- javascript - 嵌套返回语句中的“这是未定义的”
- automated-tests - Windows 应用程序的文本验证
- android - Flutter Firebase 电话身份验证不起作用