淺述節(jié)點(diǎn)的創(chuàng)建及常見功能的實(shí)現(xiàn)
新創(chuàng)建一個(gè)元素節(jié)點(diǎn),并把該節(jié)點(diǎn)添加為文檔中指定節(jié)點(diǎn)的子節(jié)點(diǎn)
1,新創(chuàng)建一個(gè)元素節(jié)點(diǎn),返回值為指向元素節(jié)點(diǎn)的引用
var liNode =document.creatElement("li"); var cityNode=document.getElementById("city");
新添加newChild子節(jié)點(diǎn),該子節(jié)點(diǎn)將作為elementNode
cityNode.appendChild(liNode);
2,創(chuàng)建一個(gè)文本節(jié)點(diǎn) creatTextNode
var xmText=document.creatTextNode("廈門");
//需求: 點(diǎn)擊 submit 按鈕時(shí), 檢查是否選擇 type, 若沒有選擇給出提示: "請(qǐng)選擇類型"; // 檢查文本框中是否有輸入(可以去除前后空格), 若沒有輸入,則給出提示: "請(qǐng)輸入內(nèi)容"; //若檢查都通過, 則在相應(yīng)的 ul 節(jié)點(diǎn)中添加對(duì)應(yīng)的 li 節(jié)點(diǎn) //需求2: 使包括新增的 li 都能響應(yīng) onclick 事件: 彈出 li 的文本值. window.onload = function(){ function showContent(liNode){ alert("^_^#" + liNode.firstChild.nodeValue); } var liNodes = document.getElementsByTagName("li"); for(var i = 0; i < liNodes.length; i++){ liNodes[i].onclick = function(){ showContent(this); } } //1. 獲取 #submit 對(duì)應(yīng)的按鈕 submitBtn var submit = document.getElementById("submit"); //2. 為 submitBtn 添加 onclick 響應(yīng)函數(shù) submit.onclick = function(){ //4. 檢查是否選擇 type, 若沒有選擇給出提示: "請(qǐng)選擇類型" //4.1 選擇所有的 name="type" 的節(jié)點(diǎn) types var types = document.getElementsByName("type"); //4.2 遍歷 types, 檢查其是否有一個(gè) type 的 checked 屬性存在, 就可說明 //有一個(gè) type 被選中了: 通過 if(元素節(jié)點(diǎn).屬性名) 來判斷某一個(gè)元素節(jié)點(diǎn)是否有 //該屬性. var typeVal = null; for(var i = 0; i < types.length; i++){ if(types[i].checked){ typeVal = types[i].value; break; } } //4.3 若沒有任何一個(gè) type 被選中, 則彈出: "請(qǐng)選擇類型". 響應(yīng)方法結(jié)束: //return false if(typeVal == null){ alert("請(qǐng)選擇類型"); return false; } //5. 獲取 name="name" 的文本值: 通過 value 屬性: nameVal var nameEle = document.getElementsByName("name")[0]; var nameVal = nameEle.value; //6. 去除 nameVal 的前后空格. var reg = /^\s*|\s*$/g; nameVal = nameVal.replace(reg, ""); //使 name 的文本框也去除前后空格. nameEle.value = nameVal; //6. 把 nameVal 和 "" 進(jìn)行比較, 若是 "" 說明只出入了空格, 彈出 "請(qǐng)輸入內(nèi)容" //方法結(jié)束: return false if(nameVal == ""){ alert("請(qǐng)輸入內(nèi)容"); return false; } //7. 創(chuàng)建 li 節(jié)點(diǎn) var liNode = document.createElement("li"); //8. 利用 nameVal 創(chuàng)建文本節(jié)點(diǎn) var content = document.createTextNode(nameVal); //9. 把 8 加為 7 的子節(jié)點(diǎn) liNode.appendChild(content); //11. 為新創(chuàng)建的 li 添加 onclick 響應(yīng)函數(shù) liNode.onclick = function(){ showContent(this); } //10. 把 7 加為選擇的 type 對(duì)應(yīng)的 ul 的子節(jié)點(diǎn) document.getElementById(typeVal) .appendChild(liNode); //3. 在 onclick 響應(yīng)函數(shù)的結(jié)尾處添加 return false, 就可以取消提交按鈕的 //默認(rèn)行為. return false; } } </script> </head> <body> <p>你喜歡哪個(gè)城市?</p> <ul id="city"> <li id="bj">北京</li> <li>上海</li> <li>東京</li> <li>首爾</li> </ul> <br><br> <p>你喜歡哪款單機(jī)游戲?</p> <ul id="game"> <li id="rl">紅警</li> <li>實(shí)況</li> <li>極品飛車</li> <li>魔獸</li> </ul> <br><br> <form action="dom-7.html" name="myform"> <input type="radio" name="type" value="city">城市 <input type="radio" name="type" value="game">游戲 name: <input type="text" name="name"/> <input type="submit" value="Submit" id="submit"/> </form>
以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時(shí)也希望多多支持腳本之家!
- jQuery與JavaScript節(jié)點(diǎn)創(chuàng)建方法的對(duì)比
- jstree創(chuàng)建無限分級(jí)樹的方法【基于ajax動(dòng)態(tài)創(chuàng)建子節(jié)點(diǎn)】
- jQuery動(dòng)態(tài)創(chuàng)建元素以及追加節(jié)點(diǎn)的實(shí)現(xiàn)方法
- jQuery簡(jiǎn)單創(chuàng)建節(jié)點(diǎn)的方法
- JavaScript中對(duì)DOM節(jié)點(diǎn)的訪問、創(chuàng)建、修改、刪除
- JQuery創(chuàng)建DOM節(jié)點(diǎn)的方法
- 刪除javascript所創(chuàng)建子節(jié)點(diǎn)的方法
- js創(chuàng)建元素(節(jié)點(diǎn))示例
- xml創(chuàng)建節(jié)點(diǎn)(根節(jié)點(diǎn)、子節(jié)點(diǎn))
- js和jquery對(duì)dom節(jié)點(diǎn)的操作(創(chuàng)建/追加)
- jquery創(chuàng)建一個(gè)新的節(jié)點(diǎn)對(duì)象(自定義結(jié)構(gòu)/內(nèi)容)的好方法
- 創(chuàng)建二叉樹 二叉樹如何刪除節(jié)點(diǎn)操作教程
- 初學(xué)js 新節(jié)點(diǎn)的創(chuàng)建 刪除 的步驟
相關(guān)文章
Axios+Spring?Boot實(shí)現(xiàn)文件上傳和下載
這篇文章主要為大家詳細(xì)介紹了Axios+Spring?Boot實(shí)現(xiàn)文件上傳和下載,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08js中如何將多層嵌套的數(shù)組轉(zhuǎn)換為一層數(shù)組
這篇文章主要介紹了js中如何將多層嵌套的數(shù)組轉(zhuǎn)換為一層數(shù)組問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06JS上傳圖片前的限制包括(jpg jpg gif及大小高寬)等
文件上傳之前的檢測(cè),通常是通過文件名來判斷文件類型是否合法,但是要想檢測(cè)文件的大小很難辦到,除非在本地或者使用控件。使用JS可以輕松解決詞問題,js在上傳圖片前判斷大小 這個(gè)可以用javascript實(shí)現(xiàn),效果2012-12-12JavaScript SHA-256加密算法詳細(xì)代碼
這篇文章主要為大家詳細(xì)介紹了JavaScript SHA-256加密算法代碼,具有一定的參考價(jià)值,感興趣的朋友可以參考一下2016-10-10