0
我期待在結帳頁面上爲數量輸入添加加號和減號按鈕。當輸入更新時,javascript函數被稱爲更新總成本。帶有javascript附加輸入的加號/減號按鈕
我已經添加了更新輸入框的按鈕和jquery,但我需要更新成本的javascript函數的幫助。
下面是按鈕的代碼:
<button class='MIN'>-</button>
<input id='qty_<c:out value="${orderItem.orderItemIdentifier.uniqueID}"/>' class="InputText" name='qty_<c:out value="${orderItem.orderItemIdentifier.uniqueID}"/>' type="text" size="1" style="width:25px;" value='<c:out value="${quickCartOrderItemQuantity}"/>' style="text-align:center" onkeydown="JavaScript:setCurrentId('qty_<c:out value='${orderItem.orderItemIdentifier.uniqueID}'/>'); CheckoutHelperJS.updateCartWait(this, this.value, '<c:out value='${orderItem.orderItemIdentifier.uniqueID}'/>',event)" />
<button class='PLUS'>+</button>
這裏是jQuery的的按鈕
$(".PLUS, .MIN").click(function(){
var itemVal = parseInt($(this).siblings(".InputText").val());
if ($(this).hasClass('MIN'))
itemVal--;
else
itemVal++;
$(this).siblings(".InputText").val(itemVal);
});
下面是updateCartWait函數的代碼:
updateCartWait:function(quantityBox, oldQuantity, orderItemId,event) {
if(event.keyCode == dojo.keys.TAB)return;
if(!this.isAjaxCheckOut()){
return;
}
//Key pressed.. update the flag
if(this.keyPressCount[orderItemId] == null && isNaN(this.keyPressCount[orderItemId])){
this.keyPressCount[orderItemId] = 0;
}
this.keyPressCount[orderItemId] = parseInt(this.keyPressCount[orderItemId]) + 1;
setTimeout(dojo.hitch(this,"checkInventoryAndUpdateCart",quantityBox,oldQuantity,orderItemId,this.keyPressCount[orderItemId]),this.updateWaitTimeOut);
}
而且這裏是checkInventoryAndUpdateCart
checkInventoryAndUpdateCart:function(quantityBox, oldQuantity, orderItemId, keyPressCountValue) {
// Get quantities and status
var inventoryStatusControl = dojo.byId("orderItem_inventoryStatus_" + orderItemId);
var clearanceStatusControl = dojo.byId("orderItem_clearanceStatus_" + orderItemId);
var availableQuantityControl = dojo.byId("orderItem_availableQuantity_" + orderItemId);
var inventoryStatus = '';
if (inventoryStatusControl && inventoryStatusControl.innerHTML != '') inventoryStatus = inventoryStatusControl.innerHTML;
var clearanceStatus = 'false';
if (clearanceStatusControl && clearanceStatusControl.innerHTML != '') clearanceStatus = clearanceStatusControl.innerHTML;
var availableQuantity = 0;
if (availableQuantityControl && availableQuantityControl.innerHTML != '') availableQuantity = parseInt(availableQuantityControl.innerHTML);
var quantity = parseInt(quantityBox.value);
if (inventoryStatus == 'Discontinued') {
alert('This product is discontinued and can not be ordered.');
return;
}
if (clearanceStatus == 'true') {
if (availableQuantity < quantity) {
this.showClearanceItemDialog(orderItemId, quantity, oldQuantity, availableQuantity, keyPressCountValue);
} else {
this.updateCart(quantity, orderItemId, keyPressCountValue);
}
return;
}
if (availableQuantity < quantity) {
if (availableQuantity == 0) {
this.showNoStockDialog(orderItemId, quantity, oldQuantity, availableQuantity, keyPressCountValue);
} else {
this.showInsufficientStockDialog(orderItemId, quantity, oldQuantity, availableQuantity, keyPressCountValue);
}
} else {
this.updateCart(quantity, orderItemId, keyPressCountValue);
}
任何人都可以幫忙嗎?