function put_to_cart_event(prodtitle, price, clicked_cell){
var td = clicked_cell;
alert(td);
put_to_cart_({title: prodtitle, price: price}, function () {
td.style.backgroundColor = '#859de6'; // <--- problem
});
}
警报正在提供[object Object]
,这意味着clicked_cell
可用且可访问,对吧?
我在这里错过了什么?
正在调用该函数:
$('.abindenwarenkorb').on('click', function(){
var productname = $('#productname').text();
var price = $('#price').text();
var in_stock = $('#in_stock').text();
var clicked_cell = $('#clicked_cell').val(); //value is set like $('#clicked_cell').val($(this));
put_to_cart_event(productname, price, clicked_cell); // <-- call
});
答案 0 :(得分:0)
可能是因为clicked_cell
没有样式属性。你能在console.log中输出clicked_cell变量吗?
答案 1 :(得分:0)
您需要传递元素而不是值 改变以下行
var clicked_cell = $('#clicked_cell');
见下面的代码:
$('.abindenwarenkorb').on('click', function(){
var productname = $('#productname').text();
var price = $('#price').text();
var in_stock = $('#in_stock').text();
var clicked_cell = $('#clicked_cell');
put_to_cart_event(productname, price, clicked_cell); // <-- call
});
编辑: 在进一步阅读您的代码时,我注意到了这条评论。
//value is set like $('#clicked_cell').val($(this));
此代码无效$('#clicked_cell').val($(this))
您无法将对象设置为值。只允许可序列化的值。
其他方面它将被转换为字符串,在您的情况下它[object Object]