![]() |
|
|||||||
| 論壇說明 |
|
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
![]() |
|
|
主題工具 | 顯示模式 |
|
|
|
|
#1 (permalink) |
|
長老會員
![]() |
這是比較單純的寫法, 每一種類別都各別區分(沒有特別分平日跟假日) 要加平日跟假日, 就是再加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>
如果有5個單價,分別為 id="A1" , id="A2", id="A3",
id="A4", id="A5"<br>
那麼請將 var priceID = "D1_price;D2_price"; 修改成 var priceID =
"A1;A2;A3;A4;A5";<br>
<br>
以上...(支援 IE , FireFox)</p>
</body>
</html>
|
__________________ 姜太公釣魚~ 願者上鉤
|
|
|
|
送花文章: 4036,
|
|
|
#3 (permalink) |
|
長老會員
![]() ![]() |
收費基準表
http://www.klms.gov.tw/Mortuary/Charge1.asp 基隆 http://www.mso.taipei.gov.tw/cgi-bin...?page=452de447 台北市 http://www.funeral.tpc.gov.tw/_file/...143/42384.html 台北縣 http://www.taocity.gov.tw/ch/aioshow...fd0&lang=zh-tw 桃園縣 http://www.junglicity.gov.tw/jungli/...t.asp#CostList 中壢市 http://dep-hcfaa.hccg.gov.tw/ch/2008...422362008.html 新竹市 我目前只有北部的連結 |
|
|
送花文章: 26751,
|
|
|
#5 (permalink) |
|
長老會員
![]() |
檔案都放在網路上的話, 可以...
但必須放在一起... (利用JavaScript的 XMLHttp) 回正題, 你提供的網址, 每一家都不一樣 ![]() 甚至有幾家是相衝的... 所以我先以第一個連結的內容, 大致改了一下, 你參考看看 語法:
<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="600" id="table1">
<tr>
<td>項目類別</td>
<td>項目</td>
<td>數量</td>
<td>小計</td>
</tr>
<tr>
<td>禮堂使用費</td>
<td>
<select id="D1_ddl" size="1" onchange="setMoney('D1_ddl', 'D1_Amount', 'D1_price')">
<option value="0">不需要</option>
<option value="1800">甲級</option>
<option value="750">乙級</option>
<option value="600">丙級</option>
<option value="225">丁級</option>
</select>
</td>
<td><input id="D1_Amount" type="text" onkeyup="setMoney('D1_ddl', 'D1_Amount', 'D1_price')" value="1" size="5"></td>
<td><span id="D1_price">0</span></td>
</tr>
<tr>
<td>禮堂冷氣費</td>
<td>
<select id="D2_ddl" size="1" onchange="setMoney('D2_ddl', 'D2_Amount', 'D2_price')">
<option value="0">不需要</option>
<option value="1200">甲級</option>
<option value="450">乙級</option>
<option value="300">丙級</option>
<option value="150">丁級</option>
</select></td>
<td><input id="D2_Amount" type="text" onkeyup="setMoney('D2_ddl', 'D2_Amount', 'D2_price')" value="1" size="5"></td>
<td><span id="D2_price">0</span></td>
</tr>
<tr>
<td>XX使用費</td>
<td>
<select id="D3_ddl" size="1" onchange="setMoneySpecial('D3_ddl', 'D3_Amount', 'D3_price')">
<option value="0;0;0">不需要</option>
<option value="1000;3;300">甲級1000,超過3小時加收300</option>
<option value="700;3;300">乙級700,超過3小時加收300</option>
<option value="400;3;200">丙級400,超過3小時加收200</option>
</select>
</td>
<td>
<input id="D3_Amount" type="text" onkeyup="setMoneySpecial('D3_ddl', 'D3_Amount', 'D3_price')" value="1" size="5"></td>
<td><span id="D3_price">0</span></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td>總計</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td><span id="total_price">0</span></td>
</tr>
</table>
<script>
//所有的單價的標籤id...要用分號區隔
var priceID = "D1_price;D2_price";
//計算金額(一般)
function setMoney(myddl, AmountID, targetID)
{
if(!document.getElementById(myddl))
{
alert("選單項目:[" + myddl+ "]不存在");
return false;
}
if(!document.getElementById(AmountID))
{
alert("數量欄位:[" + AmountID + "]不存在");
return false;
}
if(!document.getElementById(targetID))
{
alert("小計欄位:[" + targetID + "]不存在");
return false;
}
//設定單價
document.getElementById(targetID).innerHTML = document.getElementById(myddl).value * document.getElementById(AmountID).value;
//計算總價
countTotal();
}
//計算金額(特殊)
function setMoneySpecial(myddl, AmountID, targetID)
{
if(!document.getElementById(myddl))
{
alert("選單項目:[" + myddl+ "]不存在");
return false;
}
if(!document.getElementById(AmountID))
{
alert("數量欄位:[" + AmountID + "]不存在");
return false;
}
if(!document.getElementById(targetID))
{
alert("小計欄位:[" + targetID + "]不存在");
return false;
}
myValue = document.getElementById(myddl).value.split(";"); //用分號區隔金額,上限時數,超時加收價
if(myValue.length != 3)
{
alert('項目內的值設定錯誤, 請更正為 金額;超時時數,超時加收價');
}
if(document.getElementById(AmountID).value > myValue[1])
myOverHour = document.getElementById(AmountID).value - myValue[1];
else
myOverHour = 0;
//設定單價
document.getElementById(targetID).innerHTML = (myValue[0] * document.getElementById(AmountID).value) + (myOverHour * myValue[2]);
//計算總價
countTotal();
}
function countTotal()
{
//將所有的單價標籤, 轉成陣列, 以便加總金額
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>
</body>
</html>
|
|
|
送花文章: 4036,
|
![]() |
|
|
相似的主題
|
||||
| 主題 | 主題作者 | 討論區 | 回覆 | 最後發表 |
| 疑問 - 請問該如何用C寫呢?? | rang0419 | 程式語言討論區 | 4 | 2007-11-11 02:58 PM |
| 如何用VB寫讀CSV檔? | sulein1122 | 程式語言討論區 | 8 | 2005-08-22 03:19 PM |