2 回答
TA贡献1827条经验 获得超7个赞
您可以使用 HTML5data-*自定义属性将任意数据传递给事件处理程序。
'<button data-product-id="' + products.value[j].ProductID '+" data-product-name="' + products.value[j].ProductName'+" data-unit-price="' + products.value.UnitPrice'+" onclick="wrapperBuy(this)">Buy</button>'
稍后可以使用属性获取Element.dataset
function wrapperBuy(element) {
var productId = element.dataset.productId,
productName = element.dataset.productName,
unitPrice = element.dataset.unitPrice;
console.log(productId, productName, unitPrice);
//You can invoke the original buy method
//buy(productId, productName, unitPrice)
}
<button data-product-id="4" data-product-name="Chef Anton's Cajun Seasoning" data-unit-price="2200" onclick="wrapperBuy(this)">Buy</button>
此外,我强烈建议您使用不显眼的事件处理程序,即 addEventListener()
TA贡献1883条经验 获得超3个赞
试试这个
<button onclick ="buy(\'' + products.value[j].ProductID + '\',\'' + (products.value[j].ProductName) + '\',\'' + products.value.UnitPrice + '\')">Buy</button>
添加回答
举报