I want to pass a dynamic object in onclick jQuery. Please check the below snippet in which I am getting object product value as undefined. Can someone help me on how to pass and receive object value in JavaScript/jQuery?
var hpc = "";
function handleProductsClick(e, product) {
debugger;
alert(product && JSON.stringify(product));
}
function buildProducts(products) {
var bp = '';
hpc = handleProductsClick.bind(products[i]);
for (var i = 0; i < products.length; i++) {
bp += '<li onclick="hpc(event)">' + products[i].value + '</li>';
}
$("#products").html(bp);
}
function getProductsFromApi() {
var products = [{
key: 1,
value: "Apple"
},
{
key: 2,
value: "Android"
}
];
buildProducts(products);
}
getProductsFromApi();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="products"></ul>
hpc = handleProductsClick.bind(products[i]);in this lineiis undefinedidwhen you click on 'li' ??