
1JS方法:
<script>windowonload=function(){
var va = documentgetElementById("d1")childNodes;
for(var i=0;i<valength;i++){
if(va[i]nodeNametoLocaleUpperCase() == "A"){
alert("JS: "+va[i]attributes["linkId"]nodeValue);
}
}
};
</script>
2 Jquery方法:
<script src="jquery-191minjs" type="text/javascript"></script>
<script>
$(document)ready(function(){
$("#d1 a")each(function(){
alert("Jquery: "+$(this)attr("linkId"));
});
});
</script>
子节点的个数:
documentgetElementById("id")childNodeslength
注意: 标签开/闭合算2个节点 第几个子几点:
documentgetElementById("id")childNodes[n]
示例:
这里是 length-4 处,margin-left:20px
输出:length=8
实例:
<div id="page_kx" style="text-align: center;" class="tac"> <span class="fy2">1</span> <a href="#">2</a> <a href="#">3</a> <a href="#">4</a> <a href="#">5</a> <a href="#">下一页</a> <a href="#">末页</a> </div> <script> var gor=documentgetElementById("page_kx"); var gorL=Number(gorchildNodeslength)-4; gorchildNodes[gorL]stylemargin="0 0 0 20px"; </script>
下面用 jQuery 将全部 url 和 文本分别添加到两个数组里面。
其实两个数组是一样的,因为你从数据库输出的时候应该是用的同一个 url 变量输出两次,结果都是类似 aaacom 这样的。
<script type="text/javascript">$(function() {
var labels = [], urls = [];
$("form[name=frmsearchedresult] a[href^='whois']")each(function(){
labelspush($(this)text());
urlspush($(this)attr("href")replace(/^whois\asp\domain=/, ""));
});
// ["", "baiducom", "googlecn", "sinacomcn", "yahoocom", "163com"]
alert(labels);
// ["", "baiducom", "googlecn", "sinacomcn", "yahoocom", "163com"]
alert(urls);
});
</script>
原生方法:
var el = documentgetElementById('test_el');elpreviousElementSibling; // 这就是元素的前一个兄弟节点
elnextElementSibling; // 这就是元素的后一个兄弟节点
用原生js的话可以用nextSibling,不过需要判断获取到的节点是不是标签元素,因为有可能你获取到的实际是2个标签之间的空格。
例如:<span id="sp_1"></span><span id="sp_2"></span>
用var span1=documentgetElementById('sp_1');获取到第一个标签后,再
var span2=span1nextSibling;
while(span2nodeType != 1){ span2=span2nextSibling;}这样循环知道找到nodeType为1的节点(即是下个标签)。
需要监听具体事件
列如 页面单击事件 单击不同元素 显示出HTML标签的名称(大写)
<!DOCTYPE html><html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input type="text">
<button>ok</button>
<div style="height: 100px;weight:100px;background: orange"></div>
</body>
<script type="text/javascript">
windowaddEventListener('click',function () {
alert(eventsrcElementnodeName);
})
</script>
</html>
1、用 childNodes 属性,按顺序取
实现过程:首先创建一个 xml 对象,然后载入 xml 文件,再根据待取节点父节点在 xml 文件中的序号和本身的序号,确定待取节点的位置,最后返回待取节点的值。
//pId 待取节点父节点序号
//cId 待取节点序号
function getXmlNodeValue(pId, cId) {
var xmlDoc = new ActiveXObject("MicrosoftXMLDOM");
xmlDocasync = false;
xmlDocload("employeeInfoxml");
var nodes = xmlDocdocumentElementchildNodes[pId]childNodes[cId];return nodeschildNodes[0]text;
}
调用方法:alert(getXmlNodeValue(1, 2));
2、用 for 循环来取
实现过程:首先创建一个 ie 支持的 xml 对象,如果发生异常,是创建一个 FireFox 支持的空 xml 对象并返回空;然后载入 xml 文件,如要发生异常也返回空;最后,通过 for 循环遍历查找与传入的节点值相同的节点,找到后返回属于该节点的属性值。
//nodeValue 待取节点的所属节点值
function getXmlNodeValueFor(nodeValue){
var xmlDoc;
try {
//创建一个 ie 支持的 XML 文档对象
xmlDoc = new ActiveXObject("MicrosoftXMLDOM");
}catch(e){
try{
//创建FireFox空的XML文档对象
xmlDoc=documentimplementationcreateDocument("","",null);
}catch(e){
alert(emessage);
return "";
}
}
xmlDocasync = false;
try {
xmlDocload("employeeInfoxml");
}catch(e){
alert(emessage);
return "";
}
var xd=xmlDocdocumentElementchildNodes;
if(xd==null)
return "";
var tempValue;
for(var i=0;i<xdlength;i++){
if(xd[i]childNodes[0]childNodes[0]nodeValue==nodeValue) tempValue=xd[i]childNodes[2]childNodes[0]nodeValue;
}
return tempValue;
}
调用方法:alert(getXmlNodeValueFor("王佳琳"));
以上就是关于html JS中如何获取某ID下的某个标签的某个属性值全部的内容,包括:html JS中如何获取某ID下的某个标签的某个属性值、求救一个用JS或jquery获取一个指定from里面A标签的href的URL字符串和A中间的文本。、js怎么获取某个标签的前一个标签等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)