我全局定义了变量Product ID
var ProductID = {};
然后我将元素的点击ID分配给全局变量
(function($){
$(document).on('click', '.text-left', (function(){
ClickedProductId = $(this).closest("td").prop('id');
ProductID.value = ClickedProductId;
console.log(ClickedProductId);
console.log(ProductID.value);
}));
})(jQuery);
我能够验证clickedID是否已从上面的日志中添加到控制台的ProductID中。
现在我想在新函数中使用相同的ProductID.value,但ProductID.value变得未定义。
function OPENITEMDETAIL(){
console.log(ProductID.value);
$('.ProductDetail').addClass('is-visible');
}
我需要在其他函数中使用ProductID.value。我究竟做错了什么?我该怎么解决? 这是完整的代码
html
<td class="text-left" id="${key}" onclick="OPENITEMDETAIL();"><a href>${key}</a href></td>
的Javascript
(function($){
$(document).on('click', '.text-left', (function(){
ClickedProductId = $(this).closest("td").prop('id');
ProductID.value = ClickedProductId;
console.log(ClickedProductId);
}));
})(jQuery);
// VIEW ITEM DETAIL
function OPENITEMDETAIL(){
console.log("ITEm DETAIL VIEW opened and activated");
console.log(ProductID.value);
event.preventDefault();
$('.ProductDetail').addClass('is-visible');
var productcontainer = document.getElementById('ProductDetailPage');
productcontainer.innerHTML = '';
firebase.auth().onAuthStateChanged((user) => {
if (user) {
database = firebase.database();
var BusinessesId = firebase.auth().currentUser.uid;
return database.ref('/Businesses/' + BusinessesId + '/Inventory/' + ItemID.value ).once('value').then(function(snapshot) {
var ProductResults = snapshot.val();
var ResultCard = `
......
`
productcontainer.innerHTML += ResultCard;
})
}
})
}
答案 0 :(得分:-2)
由于ProductID是变量,因此直接使用&#39; =&#39;为其指定值。标志。 例如,如果您希望它是一个数组,ProductID = [ClickedProductId]
例如,只是一个原始值,然后是ProductID = ClickedProductId