<a id="test" href="#" onclick="alert(thisid+' ' + thishref);">ddd</a>
在标签中添加okclick方法,传递需要或取的参数值,如此来获取被点击的
a 标签的Id 或者Url。
1、var a = documentgetElementById("test")getElementsByTagName("div");
代码的test的父标签id的值,div为标签的名字。getElementsByTagName是一个方法。返回的是一个数组。在访问的时候要按数组的形式访问。
2、var b =documentgetElementById("test")childNodes;
使用childNodes获取子节点的时候,childNodes返回的是子节点的集合,是一个数组的格式。他会把换行和空格也当成是节点信息。
扩展资料:
js获取父节点的方式:
1、parentNode获取父节点
获取的是当前元素的直接父元素。parentNode是w3c的标准。
var p = documentgetElementById("test")parentNode
2、parentElement获取父节点
parentElement和parentNode一样,只是parentElement是ie的标准。
var p1 = documentgetElementById("test")parentElement;
3、offsetParent获取所有父节点
一看offset我们就知道是偏移量 其实这个是于位置有关的上下级 ,直接能够获取到所有父亲节点, 这个对应的值是body下的所有节点信息。
var p2 = documentgetElementById("test")offsetParent;
元素值设定为input:
<input name="input_name" id="input_id" class="password"></input>
在JS中获取ID值也就是“input_id”这个值:
<script type="text/javascript" language="javascript">
var item = documentgetElementById("input_id");
</script>
如此,所有为input_id的ID的input对象都在item中了。可以用getAttribute()方法获取。
注:总结了一些getAttribute(),setAttribute()在不同浏览器下兼容性以及如何解决这些问题
body里面有这些内容:
<div id="idHeader" class="class-header" title="kingwell" status="1"></div>
<label id="forUserName" for="userName" title="kingwell" status="1"></label>
下面是script的测试:
var el = documentgetElementById("idHeader");
alert(elgetAttribute("id"));
alert(elid);
IE Firfox->idHeader
alert(elgetAttribute("class"));
//IE6,IE7 -> null IE8,IE9,Firefox ->class-header
alert(elclass);
//IE6,IE7,IE8->报错 IE9,Firefox->undefined
alert(elgetAttribute("className"));
//IE6,IE7->class-header ; IE8,IE9,Firefox -> undefined
alert(elclassName);
//All -> class-header
var elfor = documentgetElementById("forUserName");
alert(elforgetAttribute("for"));
//IE6,IE7->undefined IE8,9,Firefox->forUseName
alert(elforfor )
//IE6,IE7报错,其它为undefined
alert(elfortitle)
//全部输出kingwell
alert(elforstatus);
//IE6-8 -> 1 IE9,Firefox->undefined
alert(elforgetAttribute("status"))
//全部输出 1
总结:
1:常规属性建议使用 nodeXXXX。
2:自定义属性建议使用nodegetAttribute("XXXX")。
3:当获取的目标是JS里的关键字时建议使用nodegetAttribute("XXX"),如label中的for。
4:当获取的目标是保留字,如:class,请使用className代替。<script language = javascript>
function request(paras){
var url = locationhref;
var paraString = urlsubstring(urlindexOf("")+1,urllength)split("&");
var paraObj = {}
for (i=0; j=paraString[i]; i++){
paraObj[jsubstring(0,jindexOf("="))toLowerCase()] = jsubstring(jindexOf("=")+1,jlength);
}
var returnValue = paraObj[parastoLowerCase()];
if(typeof(returnValue)=="undefined"){
return "";
}else{
return returnValue;
}
}
//如你给出的地址可以这样
var classid = request("classid");
var id = request("id");
//然后你就可以对这些参数处理了
</script>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)