|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
2008-12-08, 10:16 PM | #1 |
長老會員
|
討論 - 如何用HTML寫價格試算
-------------------- 閱讀本主題的最佳解答 -------------------- 請問用HTML寫價格試算方便嗎?要怎麼寫?或是那邊有範本? 我有找到光華商場的試算表,但是我不會寫程式,只會用改的http://www.arclink.com.tw/keisan.do?action=1 我要的不難,就只是一個項目有幾個規格價錢選項 與 統計而已 ..... 我說的有人聽的懂嗎? |
送花文章: 26724,
|
2008-12-09, 12:30 PM | #3 (permalink) | |
長老會員
|
引用:
我是想將底下資料,再加上我各地收刮的資料用試算的方式,比較不用算的很累 http://www.mso.taipei.gov.tw/cgi-bin...?page=452de447 不過應該沒人願意寫,我才想找資料寫寫看 若可以找程式資料給我也行,我改改看,要不就光華版看能不能改.... 感謝喔 |
|
送花文章: 26724,
|
2008-12-09, 06:08 PM | #5 (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,
|
2008-12-13, 08:15 PM | #7 (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 新竹市 我目前只有北部的連結 |
送花文章: 26724,
|
2008-12-14, 09:41 PM | #9 (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,
|
2008-12-16, 01:22 AM | #13 (permalink) |
長老會員
|
台北市的...
請參考... 語法:
<html> <head> <meta http-equiv="Content-Language" content="zh-tw"> <meta http-equiv="Content-Type" content="text/html; charset=big5"> <title>價格加總</title> </head> <body> <p><br> </p> <table border="1" width="600" id="table1"> <tr> <td colspan="4">使用級數:<select id="UserType_ddl" size="1" onchange="CountALL();"> <option value="0">甲級</option> <option value="1">乙級</option> <option value="2">丙級</option> <option value="3">丁級</option> </select> 日期類別:<select id="DateType_ddl" size="1" onchange="CountALL();"> <option value="0">平日</option> <option value="1">減價日</option> <option value="2">加價日</option> </select><p> </td> </tr> <tr> <td>項目類別</td> <td>說明</td> <td>數量</td> <td>小計</td> </tr> <tr> <td>禮堂使用費</td> <td> 依甲乙丙丁級區分,依平日或加價減價日分 </td> <td><input id="PlaceUse_Amount" type="text" onkeyup="CountALL();" value="1" size="5">小時</td> <td><span id="PlaceUse_price">0</span></td> </tr> <tr> <td>禮堂冷氣費</td> <td> 依甲乙丙丁級區分</td> <td><input id="PlaceCold_Amount" type="text" onkeyup="CountALL();" value="1" size="5">小時</td> <td><span id="PlaceCold_price">0</span></td> </tr> <tr> <td>禮堂善後處理費</td> <td> 依甲乙丙丁級區分</td> <td> <input id="PlaceAfter_Amount" type="text" onkeyup="CountALL()" value="1" size="5">次</td> <td><span id="PlaceAfter_price">0</span></td> </tr> <tr> <td> </td> <td> </td> <td> </td> <td> </td> </tr> <tr> <td colspan="4"> <p><br> 以下資料設籍外縣市者3倍:<select id="LiveCity_ddl" onchange="CountALL();" size="1"> <option value="1">設籍本市</option> <option value="3">設籍外縣市</option> </select></td> </tr> <tr> <td>項目類別</td> <td>說明</td> <td>數量</td> <td>小計</td> </tr> <tr> <td>火葬費</td> <td>設籍本市者2,000</td> <td> <input id="D3_Amount0" type="text" onkeyup="CountALL();" value="1" size="5" name="T1">具</td> <td><span id="D3_price0">0</span></td> </tr> <tr> <td>骨灰罐寄存</td> <td>設籍本市者10,000元</td> <td> <input id="D3_Amount1" type="text" onkeyup="CountALL();" value="1" size="5" name="T2">個</td> <td><span id="D3_price1">0</span></td> </tr> <tr> <td>檢骨罈寄存</td> <td>設籍本市者30,000元</td> <td> <input id="D3_Amount2" type="text" onkeyup="CountALL();" value="1" size="5" name="T3">個</td> <td><span id="D3_price2">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><span id="total_price">0</span></td> </tr> </table> <script> var PlacePrice = new Array(); //禮堂使用費 PlacePrice[0] = new Array("1800","600","3600"); //甲級使用費 : 平日,減價日,加價日 PlacePrice[1] = new Array("750","300","1500"); //乙級使用費 : 平日,減價日,加價日 PlacePrice[2] = new Array("600","225","1200"); //丙級使用費 : 平日,減價日,加價日 PlacePrice[3] = new Array("225","75","450"); //丁級使用費 : 平日,減價日,加價日 var ColdPrice = new Array("1200","450","300","150"); //冷氣使用費,甲乙丙丁4級 var AfterOperationPrice = new Array("500","300","200","100"); //禮堂善後處理費 甲級500元,乙級300元,丙級200元,丁級100元 //所有的單價的標籤id...要用分號區隔 var priceID = "PlaceUse_price;PlaceCold_price;PlaceAfter_price;D3_price0;D3_price1;D3_price2"; function CountALL() //計算總金額... { //禮堂使用費 document.getElementById("PlaceUse_price").innerHTML = PlacePrice[document.getElementById("UserType_ddl").value][document.getElementById("DateType_ddl").value] * document.getElementById("PlaceUse_Amount").value; //禮堂冷氣費 document.getElementById("PlaceCold_price").innerHTML = ColdPrice[document.getElementById("UserType_ddl").value] * document.getElementById("PlaceCold_Amount").value; //禮堂善後處理 document.getElementById("PlaceAfter_price").innerHTML = ColdPrice[document.getElementById("UserType_ddl").value] * document.getElementById("PlaceAfter_Amount").value; //火葬費 document.getElementById("D3_price0").innerHTML = document.getElementById("LiveCity_ddl").value * 2000 * document.getElementById("D3_Amount0").value; //骨灰罐寄存 document.getElementById("D3_price1").innerHTML = document.getElementById("LiveCity_ddl").value * 10000 * document.getElementById("D3_Amount1").value; //檢骨罈寄存 document.getElementById("D3_price2").innerHTML = document.getElementById("LiveCity_ddl").value * 30000 * document.getElementById("D3_Amount2").value; //將所有的單價標籤, 轉成陣列, 以便加總金額 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; } //執行一次總計算... CountALL(); </script> </body> </html> |
送花文章: 4036,
|
向 cwvdavid 送花的會員:
|
getter (2008-12-16)
感謝您發表一篇好文章 |
|
|
相似的主題 | ||||
主題 | 主題作者 | 討論區 | 回覆 | 最後發表 |
疑問 - 請問該如何用C寫呢?? | rang0419 | 程式語言討論區 | 4 | 2007-11-11 02:58 PM |
如何用VB寫讀CSV檔? | sulein1122 | 程式語言討論區 | 8 | 2005-08-22 03:19 PM |