JavaScript:動態生成表格併計算列總和
本文檔旨在指導初學者使用JavaScript 動態生成HTML 表格,併計算每列的總和,最後將總和添加到表格的底部作為新的一行。通過本文,你將學習如何使用JavaScript 操作DOM 元素,創建表格,以及進行簡單的數值計算。
動態生成表格併計算列總和
在Web 開發中,經常需要動態生成表格並進行一些計算。本教程將演示如何使用JavaScript 創建一個表格,該表格根據用戶輸入的數字,計算該數字的平方和階乘,並將結果顯示在表格中。最後,我們還將計算每列的總和,並將其添加到表格的底部。
1. HTML 結構
首先,我們需要在HTML 中創建一個輸入框、一個按鈕和一個用於顯示結果的div 元素:
<input id="broj" type="text"> <button onclick="tablica()">生成表格</button> <div id="rezultat"></div>
2. JavaScript 代碼
接下來,我們將編寫JavaScript 代碼來實現表格的生成和計算。
function tablica() { var sum1 = 0, sum2 = 0, sum3 = 0; // 初始化列總和var nr = document.getElementById("broj").value; // 獲取用戶輸入的數字// 輸入驗證if (nr <tr> <th>N</th> <th>N²</th> <th>N!</th> </tr>"; var faktorijela = 1; // 初始化階乘// 循環生成表格行for (var i = 1; i <td>" val1 "</td><td>" val2 "</td><td>" val3 "</td>"; // 累加列總和sum1 = sum1 val1; sum2 = sum2 val2; sum3 = sum3 val3; } // 添加總和行rez = rez "<tr> <td>" sum1 "</td> <td>" sum2 "</td> <td>" sum3 "</td> </tr>"; rez = rez ""; // 將表格顯示在頁面上var rezTablica = document.getElementById("rezultat"); rezTablica.innerHTML = rez; }
代碼解釋:
-
初始化變量:
- sum1, sum2, sum3: 用於存儲每一列的總和,初始值為0。
- nr: 獲取用戶在輸入框中輸入的數字。
- rez: 用於構建HTML 表格字符串。
- faktorijela: 用於計算階乘,初始值為1。
- 輸入驗證:檢查用戶輸入是否小於2。如果小於2,則顯示錯誤消息並結束函數執行。
- 創建表格頭部:使用HTML 字符串創建表格的頭部,包含"N", "N²", "N!" 三列。
-
循環生成表格行:
- 使用for 循環從1 迭代到用戶輸入的數字nr。
- 在每次迭代中,計算當前數字的平方(i * i) 和階乘(faktorijela = faktorijela * i)。
- 使用HTML 字符串創建表格的一行,包含當前數字、平方和階乘。
- 將該行添加到rez 字符串中。
- 將當前行的三個值分別累加到sum1, sum2, sum3 中。
- 添加總和行:在循環結束後,使用HTML 字符串創建表格的最後一行,包含每一列的總和。
- 顯示表格:將完整的HTML 表格字符串賦值給rezultat div 的innerHTML 屬性,從而在頁面上顯示表格。
3. 運行結果
當用戶在輸入框中輸入一個數字(例如5)並點擊“生成表格”按鈕後,頁面將顯示一個包含5 行數據的表格,並且在表格底部會有一行顯示每一列的總和。
4. 注意事項
- 數據類型:請確保用戶輸入的是數字,可以使用parseInt() 或parseFloat() 函數將輸入框中的值轉換為數字。
- 錯誤處理:可以添加更多的錯誤處理機制,例如檢查用戶是否輸入了非數字字符。
- 樣式美化:可以使用CSS 來美化表格的樣式。
- 代碼復用:可以將生成表格的邏輯封裝成一個獨立的函數,方便在其他地方調用。
5. 總結
通過本教程,你學習瞭如何使用JavaScript 動態生成HTML 表格,併計算每列的總和。這只是一個簡單的示例,你可以根據實際需求進行擴展和修改。希望本教程對你有所幫助!
以上是JavaScript:動態生成表格併計算列總和的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

要創建HTML無序列表,需使用標籤定義列表容器,每個列表項用標籤包裹,瀏覽器會自動添加項目符號;1.使用標籤創建列表;2.每個列表項用標籤定義;3.瀏覽器自動生成默認圓點符號;4.可通過嵌套實現子列表;5.使用CSS的list-style-type屬性可修改符號樣式,如disc、circle、square或none;正確使用這些標籤即可生成標準無序列表。

使用標籤是最簡單且推薦的方法,語法為,適用於現代瀏覽器直接嵌入PDF;2.使用標籤可提供更好的控制和備用內容支持,語法為,並在標籤內提供下載鏈接作為不支持時的備用方案;3.可選通過GoogleDocsViewer嵌入,但因隱私和性能問題不建議廣泛使用;4.為提升用戶體驗,應設置合適的高度、使用響應式尺寸(如height:80vh)並提供PDF下載鏈接,以便用戶自行下載查看。

theconteDitiitableAttributeMakesyHtmLelementEdabledableddingContenteDibledable =“ true”,允許使用contostlymodifectlymodifycontentinthebrowser.2.itiscommonlysonlysedinrysedinrichedinrichtexteditors,note-placeedingingInterInterfaces,andIn-placeeditingInterfaces,supportingingingingingingingingingingingingingingingelementslementslementLikeDikeDivikeDiv

要為網站標題欄添加圖標,需在HTML的部分鏈接一個favicon文件,具體步驟如下:1.準備一個16x16或32x32像素的圖標文件,推薦使用favicon.ico命名並放置於網站根目錄,或使用PNG、SVG等現代格式;2.在HTML的中添加鏈接標籤,如,若使用PNG或SVG格式則相應調整type屬性;3.可選地為移動設備添加高分辨率圖標,如AppleTouchIcon,並通過sizes屬性指定不同尺寸;4.遵循最佳實踐,將圖標置於根目錄以確保自動檢測,更新後清除瀏覽器緩存,檢查文件路徑正確性,

選擇合適的HTMLinput類型能提升數據準確性、增強用戶體驗並提高可用性。 1.根據數據類型選用對應input類型,如text、email、tel、number和date,可實現自動校驗和適配鍵盤;2.利用HTML5新增類型如url、color、range和search,可提供更直觀的交互方式;3.配合使用placeholder和required屬性,可提升表單填寫效率和正確率,但需注意placeholder不能替代label。

Usetheelementwithinatagtocreateasemanticsearchfield.2.Includeaforaccessibility,settheform'sactionandmethod="get"attributestosenddatatoasearchendpointwithashareableURL.3.Addname="q"todefinethequeryparameter,useplaceholdertoguideuse

首先檢查src屬性路徑是否正確,確保相對路徑或絕對路徑與HTML文件位置匹配;2.核實文件名和擴展名是否拼寫正確且區分大小寫;3.確認圖像文件實際存在於指定目錄中;4.使用合適的alt屬性並確保圖像格式為瀏覽器廣泛支持的.jpg、.png、.gif或.webp;5.排除瀏覽器緩存問題,嘗試強制刷新或直接訪問圖像URL;6.檢查服務器權限設置,確保文件可被讀取且未被屏蔽;7.驗證img標籤語法正確,包含正確的引號和屬性順序,最終通過瀏覽器開發者工具排查404錯誤或語法問題以確保圖像正常顯示。

novalidate屬性用於禁用瀏覽器默認的表單驗證;1.添加novalidate後,即使輸入字段包含required、pattern、min、max等約束,瀏覽器也不會執行默認驗證;2.表單將無視輸入是否有效直接提交,適用於使用JavaScript自定義驗證、多步驟表單或開發測試階段臨時繞過驗證;3.它是一個布爾屬性,無需賦值,作用於整個表單;4.移除novalidate即可恢復瀏覽器的正常驗證行為;因此,novalidate使開發者能夠自主控製表單驗證的時機與方式。
