查看單個文章
舊 2008-12-09, 06:08 PM   #5 (permalink)
cwvdavid
長老會員
 
cwvdavid 的頭像
榮譽勳章
UID - 476
在線等級: 級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時級別:46 | 在線時長:2395小時 | 升級還需:2小時
註冊日期: 2002-12-06
住址: 天與地的夾縫
文章: 3106
精華: 0
現金: 5256 金幣
資產: 2034465 金幣
預設



這是比較單純的寫法,
每一種類別都各別區分(沒有特別分平日跟假日)

要加平日跟假日, 就是再加1個 [選單], 去選擇平日跟假日...

如果有整理過後的列表 : (不一定要實際的價格或內容, 但要能夠歸納出公式)
那我就可以直接寫出一個來
(如果可以, 要請你把 實際搜括 的部份, 也列出來, 這樣比較好處理)

語法:
<html>

<head>
<meta http-equiv="Content-Language" content="zh-tw">
<meta http-equiv="Content-Type" content="text/html; charset=big5">
<title>價格加總</title>
</head>

<body>



<table border="1" width="400" id="table1">
	<tr>
		<td>項目類別</td>
		<td>項目</td>
		<td>單價</td>
	</tr>
	<tr>
		<td>○○類</td>
		<td>
			<select size="1" onchange="setMoney(this, 'D1_price')">
				<option value="0">不需要</option>
				<option value="1000">○○1號</option>
				<option value="900">○○2號</option>
				<option value="800">○○3號</option>
				<option value="700">○○4號</option>
				<option value="1100">○○5號</option>
				<option value="1300">○○6號</option>
			</select>
		</td>
		<td><span id="D1_price">0</span></td>
	</tr>
	<tr>
		<td>●◎類</td>
		<td>
			<select size="1" onchange="setMoney(this, 'D2_price')">
				<option value="0">不需要</option>
				<option value="1000">●◎1號</option>
				<option value="900">●◎2號</option>
				<option value="800">●◎3號</option>
				<option value="700">●◎4號</option>
				<option value="1100">●◎5號</option>
				<option value="1300">●◎6號</option>
			</select></td>
		<td><span id="D2_price">0</span></td>
	</tr>
	<tr>
		<td> </td>
		<td> </td>
		<td> </td>
	</tr>
	<tr>
		<td> </td>
		<td> </td>
		<td> </td>
	</tr>
	<tr>
		<td> </td>
		<td> </td>
		<td> </td>
	</tr>
	<tr>
		<td> </td>
		<td> </td>
		<td>總計</td>
	</tr>
	<tr>
		<td> </td>
		<td> </td>
		<td><span id="total_price">0</span></td>
	</tr>
</table>


<script>

	function setMoney(myddl, targetID)
	{
		//設定單價
		document.getElementById(targetID).innerHTML = myddl.value;
		
		//計算總價
		countTotal();
	}

	function countTotal()
	{
		//所有的單價的標籤id...要用分號區隔
		var priceID = "D1_price;D2_price";
		
		//將所有的單價標籤, 轉成陣列, 以便加總金額
		var myPriceArray = priceID.split(";");
		
		var myCount = 0;
		
		for (var i=0;i< myPriceArray.length;i++)
		{
			if(document.getElementById(myPriceArray[i]))
			{
				myCount = myCount + (document.getElementById(myPriceArray[i]).innerHTML * 1);
			}
			else
			{
				alert("找不到價格標籤的ID : " + myPriceArray[i]);
				return false;
			}
		}
		
		document.getElementById("total_price").innerHTML = myCount;
	}

</script>

<p>說明:<br>
1. 請依類別需要,放置下拉式選單<br>
2. 下拉式選單的 value(值),請填入 金額(數字),以便計算<br>
3. 下拉式選單請設置 onchange的事件,【setMoney(this, 單價的標籤的ID)】<br>
4. 在程式碼 function countTotal() 裡面,第一行就是全部的單價標籤,請依實際單價的數量自行修改...<br>
&nbsp;&nbsp;&nbsp; 如果有5個單價,分別為 id=&quot;A1&quot; ,&nbsp; id=&quot;A2&quot;,&nbsp; id=&quot;A3&quot;,&nbsp; 
id=&quot;A4&quot;,&nbsp; id=&quot;A5&quot;<br>
&nbsp;&nbsp;&nbsp; 那麼請將 var priceID = &quot;D1_price;D2_price&quot;; 修改成 var priceID = 
&quot;A1;A2;A3;A4;A5&quot;;<br>
<br>
以上...(支援 IE , FireFox)</p>

</body>

</html>
__________________
姜太公釣魚~ 願者上鉤
cwvdavid 目前離線  
送花文章: 4036, 收花文章: 2466 篇, 收花: 10141 次
回覆時引用此帖
有 4 位會員向 cwvdavid 送花:
getter (2008-12-16),magicwoo (2008-12-15),ppp0600 (2008-12-09),qdenise (2008-12-09)
感謝您發表一篇好文章