I am looking for a way to make an “Add to Cart” ajax call to transfer the product code (row identifier) and the quantity from other columns in the pressed row and redirect to the cart page if I click in the jqgrid column.
According to https://github.com/free-jqgrid/jqGrid/wiki/improvement-of-formatter:-"showlink"
Twitter format has improved, so I tried to use it.
I tried colmodel
{"label":"Add to cart", "name":"Addtocrt_addtocrt","search":false,"sortable":false, "viewable":false,"formatter":"showlink","formatoptions":{"showAction":addToCartOnClick }}
and method
function addToCartOnClick(rowId, iRow, iCol, cellValue, e) { var $quantity = $('#' + $.jgrid.jqID(rowId) + '>td:nth-child(' + (iCol + 1) + ')'), quantityVal; if (iCol < 0) { quantityVal = 1; } else if ($quantity.find('>input').length === 0) { quantityVal = $quantity.text(); } else { quantityVal = $quantity.find('>input').val(); } window.location = 'Store/AddToCart?' + $.param({ id: rowId, quantity: quantityVal }); }
addToCartOnClick is not called in jree jqgrid.
In jqgrid 4.6 dynamic link formatting
onClick=addToCartOnClick
worked as described in How to pass data to a URL from a jqgrid string if a hyperlink is clicked
In the free jqgrid addToCartOnClick is also not called from dynamicLink formatting.
How to call a method and get column values from a row with a click in free jqgrid?
javascript jquery ajax jqgrid free-jqgrid
Andrus
source share