![]() |
|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
![]() |
#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,
![]() |
|
|
![]() |
||||
主題 | 主題作者 | 討論區 | 回覆 | 最後發表 |
疑問 - 請問該如何用C寫呢?? | rang0419 | 程式語言討論區 | 4 | 2007-11-11 02:58 PM |
如何用VB寫讀CSV檔? | sulein1122 | 程式語言討論區 | 8 | 2005-08-22 03:19 PM |