本文目錄一覽:
- 1、如何用js獲取標籤標籤內容里的數據,即標籤內容 TagName(id),可以么,我為什麼取不到數據。
- 2、JS關於關於tagname
- 3、js中的createElement(tagName)疑問
- 4、js如何在指定的div內使用getElementsByTagName獲取元素
- 5、如何用JS獲取html元素的標記名?
- 6、JS中獲取表現的問題name和tagname
如何用js獲取標籤標籤內容里的數據,即標籤內容 TagName(id),可以么,我為什麼取不到數據。
說下你代碼錯誤的地方吧:
1,button結束標籤沒有
2,script type=”javascript”/script
3,是getElementsByTagName而不是getElementByTagName
4,document.getElementsByTagName(“p”)應該為document.getElementsByTagName(“p”)[0]
正確代碼:
!DOCTYPE html
html
body
h1
我的 Web 頁面/h1
p id=”demo”
一個段落。/p
div id=”myDIV”
一個 DIV。/div
button onclick=”myFunction()”
點擊顯示/button
script type=”text/javascript”
function myFunction() {
alert(document.getElementsByTagName(“p”)[0].innerHTML);
}
/script
/body
/html
JS關於關於tagname
document.body.childNodes[i].childNodes[0].parentNode.id ==”qwe1″
——————————————————————————–
或者樓上2個說的。。
——————————————————————————–
var pa = /asd/;
if(pa.test(document.body.childNodes[i].childNodes[0].parentNode.id)){
alert(document.body.childNodes[i].childNodes[0].parentNode.id);
}
js中的createElement(tagName)疑問
document.body 並不是document對象,而是html element對象。
也就是說,createElement是document對象的方法,而insertBefore是html element對象的方法。
你可以認為document.body是引用boyd元素的一種快捷方式,即document.body.insertBefore()等同於document.getElementsByTagName(‘body’)[0].insertBefore()
明白了?
你可以使用調試工具檢查document對象提供的方法和屬性信息。
js如何在指定的div內使用getElementsByTagName獲取元素
在指定的div內使用getElementsByTagName獲取元素的主要代碼為:
getElementById(div_id).getElementsByTagName(tag_name);
示例如下:
1、HTML結構
div id=”test”
id=test: spanGlen/spanspanTane/spanspanJohn/spanspanRalph/span
/div
div id=”test1″
id=test0: spanGlen1/spanspanTane1/spanspanJohn1/spanspanRalph1/span
/div
input type=’button’ value=’獲取id為test的div下的span’ onClick=”fun()”/
2、javascript代碼
function fun(){
obj = document.getElementById(“test”).getElementsByTagName(“span”);
str= [];
for(i=0;iobj.length;i++){
str.push(obj[i].innerHTML);
}
alert(str);
}
3、效果演示
如何用JS獲取html元素的標記名?
有原生DOM獲取以及用js庫比如jquery
原生DOM的話首先獲取標籤對象,id或者name或其他
例:
p id=”targetp” 2333333/p
script
var element = document.getElementById(“targetp”);
var tagname = element.tagName;
alert(tagname);
/script
jQuery獲取
$(“#content-header”).get(0).tagName
如果已經獲取到對象可以直接獲取標記名
p onclick=”alert(‘您單擊的是:’+this.tagName);”中華人民共和國/p
JS中獲取表現的問題name和tagname
getElementsByName是根據標籤的name屬性來拿的
getElementsByTagName是根據標籤名來拿
getElementsByName()
這個是通過NAME來獲得元素,但不知大家注意沒有,這個是GET ELEMENTS,複數ELEMENTS代表獲得的不是一個元素,為什麼呢?
因為DOCUMENT中每一個元素的ID是唯一的,但NAME卻可以重複。打個比喻就像人的身份證號是唯一的(理論上,雖然現實中有重複),但名字
重複的卻很多。如果一個文檔中有兩個以上的標籤NAME相同,那麼getElementsByName()就可以取得這些元素組成一個數組。
比如有兩個DIV:
div name=”docname” id=”docid1″/div
div name=”docname” id=”docid2″/div
那麼可以用getElementsByName(“docname”)獲得這兩個DIV,用getElementsByName(“docname”)[0]訪問第一個DIV,用getElementsByName
getElementsByTagName()
這個呢就是通過TAGNAME(標籤名稱)來獲得元素,一個DOCUMENT中當然會有相同的標籤,所以這個方法也是取得一個數組。
下面這個例子有兩個DIV,可以用getElementsByTagName(“div”)來訪問它們,用getElementsByTagName(“div”)[0]訪問第一個DIV,用
getElementsByTagName(“div”)[1]訪問第二個DIV。
原創文章,作者:GKCY,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/146771.html