jQuery實(shí)現(xiàn)購物車計(jì)算價(jià)格功能的方法
本文實(shí)例講述了jQuery實(shí)現(xiàn)購物車計(jì)算價(jià)格功能的方法。分享給大家供大家參考。具體如下:
目的
實(shí)現(xiàn)在html界面修改購物車的件數(shù),購物車商品價(jià)格的小計(jì)和總計(jì)要修改。
實(shí)現(xiàn)思路
1.當(dāng)點(diǎn)擊進(jìn)入界面,刷新的時(shí)候觸發(fā)body內(nèi)的onload=""方法,跳轉(zhuǎn)到JS代碼。這樣做的原因是在數(shù)據(jù)庫內(nèi)我們只會(huì)存儲(chǔ)某客戶的準(zhǔn)備購買的商品件數(shù),而不會(huì)存儲(chǔ)每類商品價(jià)格的小計(jì)和購物車內(nèi)所有物品的商品總價(jià)格,初始化的目的就是為將這些數(shù)字計(jì)算出來后顯示在前臺(tái)界面上。
2.當(dāng)更改數(shù)量輸入框中每個(gè)商品的數(shù)量時(shí),整個(gè)購物表商品的價(jià)格,商品的小計(jì)和總計(jì)會(huì)根據(jù)數(shù)量發(fā)生變化。
成品樣圖展示
全部代碼(火狐瀏覽器)

<!DOCTYPE HTML>
<html>
<head>
<title>cart</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<!-- 要把jquery-1.9.1.min.js導(dǎo)進(jìn)去,不導(dǎo)出不來 -->
<script type="text/javascript" src="jquery-1.9.1.min.js"></script>
<script language="javascript">
$(function(){
var size=3.0*$('#image1').width();
$("#image1").mouseover(function(event) {
var $target=$(event.target);
if($target.is('img'))
{
$("<img id='tip' src='"+$target.attr("src")+"'>").css({
"height":size,
"width":size,
}).appendTo($("#imgtest"));/*將當(dāng)前所有匹配元素追加到指定元素內(nèi)部的末尾位置。*/
}
}).mouseout(function() {
$("#tip").remove();/*移除元素*/
})
})
</script>
<script type="text/javascript">
function total(id)
{
/*計(jì)算單個(gè)的價(jià)格*/
var quantity=document.getElementById("quantity"+id).value;
var price=document.getElementById("price"+id).value;
var smallTotal=quantity*price;
var smallT=document.getElementById("smallTotal"+id);
smallT.innerHTML=smallTotal;
/*計(jì)算總價(jià)格*/
var totalPrice=0;
for(var a=1;a<3;a++){
var quantity=document.getElementById("quantity"+a).value;
var price=document.getElementById("price"+a).value;
var smallTotal=quantity*price;
totalPrice=totalPrice+smallTotal;
}
var total=document.getElementById("total");
total.innerHTML=totalPrice;
}
</script>
<script type="text/javascript">
function initialize()
{
var totalPrice=0;
for(var a=1;a<3;a++){
var quantity=document.getElementById("quantity"+a).value;
var price=document.getElementById("price"+a).value;
var smallTotal=quantity*price;
totalPrice=totalPrice+smallTotal;
/*alert(smallTotal);*/
var smallT=document.getElementById("smallTotal"+a);
smallT.innerHTML=smallTotal;
}
/*取出購物車的所有商品的價(jià)格總和*/
var total=document.getElementById("total");
total.innerHTML=totalPrice;
}
</script>
<style type="text/css">
#imgtest {
position: absolute;
top: 100px;
left: 400px;
z-index: 1;
}
table {
left: 100px;
font-size: 20px;
}
</style>
</head>
<body onload="initialize()">
<div id="imgtest"></div>
<br />
<br />
<table border="1" style="text-align: center;" align="center">
<thead style="height: 50">
<td style="WIDTH: 300px">
商品名稱
</td>
<td style="WIDTH: 60px">
圖片
</td>
<td style="WIDTH: 170px">
數(shù)量
</td>
<td style="WIDTH: 170px">
價(jià)格
</td>
<td style="WIDTH: 250px">
小計(jì)
</td>
</thead>
<tbody>
<tr>
<td class="name">商品1</td>
<td class="image">
<img src="1.jpg" width="40px" height="40px" id="image1"/>
</td>
<td class="quantity">
<input id="quantity1" value="1" onblur="total(1);"/>
</td>
<td class="price">
<input type="hidden" id="price1" value="20"/>
20
</td>
<td class="total">
<span id="smallTotal1"></span> 元
</td>
</tr>
<tr>
<td class="name">商品2</td>
<td class="image">
<img src="1.jpg" width="40px" height="40px" id="image1"/>
</td>
<td class="quantity">
<input id="quantity2" value="2" onblur="total(2);"/>
</td>
<td class="price">
<input type="hidden" id="price2" value="30"/>
30
</td>
<td class="total">
<span id="smallTotal2"></span> 元
</td>
</tr>
<tr>
<td colspan="4" class="cart_total">
<br>
</td>
<td>
<span class="red">總計(jì):</span><span id="total"></span> 元
</td>
</tr>
</tbody>
</table>
</body>
</html>
希望本文所述對大家的jQuery程序設(shè)計(jì)有所幫助。
- jQuery實(shí)現(xiàn)購物車多物品數(shù)量的加減+總價(jià)計(jì)算
- jQuery實(shí)現(xiàn)加入購物車飛入動(dòng)畫效果
- JQuery實(shí)現(xiàn)的購物車功能(可以減少或者添加商品并自動(dòng)計(jì)算價(jià)格)
- 純jquery實(shí)現(xiàn)模仿淘寶購物車結(jié)算
- 基于JQuery實(shí)現(xiàn)的類似購物商城的購物車
- jQuery實(shí)現(xiàn)購物車數(shù)字加減效果
- jQuery+HTML5加入購物車代碼分享
- jquery實(shí)現(xiàn)購物車基本功能
- jquery購物車結(jié)算功能實(shí)現(xiàn)方法
- jQuery實(shí)現(xiàn)購物車
相關(guān)文章
使用jquery DataTable和ajax向頁面顯示數(shù)據(jù)列表的方法
今天小編就為大家分享一篇使用jquery DataTable和ajax向頁面顯示數(shù)據(jù)列表的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08
關(guān)于jquery中全局函數(shù)each使用介紹
jquery 包含了兩個(gè) each 一個(gè)是 $().each 另一個(gè)是 $.each 區(qū)別就在于前一個(gè)是 jquery對象的內(nèi)置函數(shù) 而后一個(gè) 這是對象的遍歷函數(shù)2013-12-12
基于jQuery的JavaScript模版引擎JsRender使用指南
這篇文章主要介紹了基于jQuery的JavaScript模版引擎JsRender使用指南,需要的朋友可以參考下2014-12-12
jQuery操作dom實(shí)現(xiàn)彈出頁面遮罩層(web端和移動(dòng)端阻止遮罩層的滑動(dòng))
實(shí)現(xiàn)彈出遮罩層的方法有很多種,接下來本文給大家介紹通過jquery操作dom實(shí)現(xiàn)彈出頁面遮罩層以及web端和移動(dòng)阻止遮罩層的滑動(dòng),對頁面彈出遮罩層的相關(guān)知識(shí)感興趣的朋友一起看看吧2016-08-08
jQuery Mobile的loading對話框顯示/隱藏方法分享
jQuery Mobile提供兩個(gè)方法,使得開發(fā)者在編寫JavaScript業(yè)務(wù)編輯時(shí),可以隨意的控制loading提示框2013-11-11
利用JQuery動(dòng)畫制作滑動(dòng)菜單項(xiàng)效果實(shí)現(xiàn)步驟及代碼
滑動(dòng)菜單項(xiàng)效果,聽起來就是很時(shí)尚的一個(gè)效果,不過實(shí)現(xiàn)起來有些麻煩,還好有本文的出現(xiàn),可以幫助你解決這個(gè)困惑,熱愛特效的你可不要錯(cuò)過了哈,好了話不多說切入正文2013-02-02
jquery sortable的拖動(dòng)方法示例詳解
本文以示例的方式為大家介紹下jquery sortable的拖動(dòng)方法的具體實(shí)現(xiàn),感興趣的朋友可以參考下2014-01-01

