帮忙修改个JAVASCRIPT方法。 得到父对象function GetParent(objLI){ var objRetVal = null; if( objLI != null && objLI.parentElement != null ){ objRetVal = objLI.parentElement; } if(objRetVal==null){ objRetVal = objLI.parentNode; } return objRetVal;} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <a href="eeeee" id="as1">22222222</a>标签的内容可以任意改动只要不改动链接地址和显示内容就可以了,比如改成:<a href="eeeee" title="as1">22222222</a>什么的,把上层DIV的 ID放到那里都行,只要方便取到就好。 <script type="text/javascript" language="javascript"> function show(){ //取得文档所有的<a href>链接 var a=document.getElementsByTagName("a"); if (a!=null){ //遍历所有链接 for(var i=0;i<a.length;i++){ //如果链接的值(页面显示内容)为“22222222” if(a的值==“22222222”){ //取得此连接的ID,取得上层的DIV,不管什么方法能取道上层DIV的ID就可以 var objs=GetParent(a[i]) //隐藏此DIV //不能直接取得DIV的ID,要根据链接内容取得ID objs.innerHTML=""; } } } }function GetParent(objLI){ var objRetVal = null; if( objLI != null && objLI.parentElement != null ){ objRetVal = objLI.parentElement; } if(objRetVal==null){ objRetVal = objLI.parentNode; } return objRetVal; } </script> if(a[i].innerHTML=="22222222"){a[i].innerHTML="";} 不好意思,没说清楚,直接得到一个父对象是不行的,因为在程序里面他的上层对象还有<td><tr>什么的<DIV>在这些td,tr之上。 <html><head> <script type="text/javascript" language="javascript"> function show(){ //取得文档所有的<a href>链接 var a=document.getElementsByTagName("a"); if (a!=null){ //遍历所有链接 for(var i=0;i<a.length;i++){ //如果链接的值(页面显示内容)为“22222222” if(a[i].innerHTML=="22222222"){ //取得此连接的ID,取得上层的DIV,不管什么方法能取道上层DIV的ID就可以 //var objs=document.getElementById("a的id"); //隐藏此DIV //不能直接取得DIV的ID,要根据链接内容取得ID a[i].parentNode.style.display="none"; } } } } </script></head> <body onload="show()"> <div id="as"> <a href="aaaaa" id="as">11111111</a> </div> <div id="as1"> <a href="eeeee" id="as1">22222222</a> </div> <div id="as2"> <a href="aaaaa" id="as2">33333333</a> </div> <div id="as3"> <a href="eeeee" id="as3">44444444</a> </div></body></html> <html><head> <script type="text/javascript" language="javascript"> function show(){ //取得文档所有的<a href>链接 var a=document.getElementsByTagName("a"); var p; for(var i=0;i<a.length;i++){ if(a[i].innerHTML=="22222222"){ p=a[i].parentElement?a[i].parentElement:a.parentNode; p.style.display="none"; } } } </script></head> <body onload="show()"> <div id="as"> <a href="aaaaa" id="as">11111111</a> </div> <div id="as1"> <a href="eeeee" id="as1">22222222</a> </div> <div id="as2"> <a href="aaaaa" id="as2">33333333</a> </div> <div id="as3"> <a href="eeeee" id="as3">44444444</a> </div></body></html> 你可以遍历div 用indexOf来判断是否符合要求 想方便 用JQuery 它的抓取很强大 //取得此连接的ID,取得上层的DIV,不管什么方法能取道上层DIV的ID就可以var objs=document.getElementById("a的id"); //隐藏此DIV//不能直接取得DIV的ID,要根据链接内容取得IDfor(var i=0;i<a.length;i++){ var ss = a[i].parentNode // 这样就获取了上层节点var len = a[i].parentNode.childNodes.length;for(var j=0;j<len;j++){ a[i].parentNode.childNodes[j].innerHTML ///自己判断内容即可}// 通过 a[i].parentNode.childNodes[j].innerHTML 获取全部子节点数量,然后循环判断节点的innerHTML即可 } 谢谢上面几位了,方法都对。我写的不对,我想隐藏的是DIV,不是单个上层元素。如:<body onload="show()"> <table> <div id="as"> <tr> <td>链接1:</td> <td> <a href="aaaaa" id="as">11111111</a> </td> </tr> </div> <div id="as1"> <tr> <td>链接2:</td> <td> <a href="eeeee" id="as1">22222222</a> </td> </tr> </div> <div id="as2"> <tr> <td>链接3:</td> <td> <a href="aaaaa" id="as2">33333333</a> </td> </tr> </div> <div id="as3"> <tr> <td>链接4:</td> <td> <a href="eeeee" id="as3">44444444</a> </td> </tr> </div> </table></body>不隐藏显示出来是: 链接1: 11111111 链接2: 22222222 链接3: 33333333 链接4: 44444444 隐藏后: 链接1: 11111111 链接3: 33333333 链接4: 44444444 功能是:我在文档中找到“22222222”,然后隐藏相对应的那个DIV 急!!!JS对象内部访问问题 请各位帮我看看,我这为什么不出图? 多谢,多谢!急! javascript和Ajax在同一个页面中会冲突吗? 我这么写代码能够正确执行..但是IE左下会出错说: 这段代码是javascript代码吗? 怎么样向子节点里添加子节点用javascript写的 100分求,MSDN导航栏 (hide toc 和 show toc)的功能 请问那有好的javascript教程下载? javascript如何从一个.txt文件中读取数据来动态控制下拉框 高手看过来,渐变 + 高度变化 js源代码发送 50分求,把这个页面的菜单抠出来。。。
只要不改动链接地址和显示内容就可以了,比如改成:
<a href="eeeee" title="as1">22222222</a>什么的,
把上层DIV的 ID放到那里都行,只要方便取到就好。
function show(){
//取得文档所有的<a href>链接
var a=document.getElementsByTagName("a");
if (a!=null){
//遍历所有链接
for(var i=0;i<a.length;i++){
//如果链接的值(页面显示内容)为“22222222”
if(a的值==“22222222”){
//取得此连接的ID,取得上层的DIV,不管什么方法能取道上层DIV的ID就可以
var objs=GetParent(a[i])
//隐藏此DIV
//不能直接取得DIV的ID,要根据链接内容取得ID
objs.innerHTML="";
}
}
}
}
function GetParent(objLI){
var objRetVal = null;
if( objLI != null && objLI.parentElement != null ){
objRetVal = objLI.parentElement;
}
if(objRetVal==null){
objRetVal = objLI.parentNode;
}
return objRetVal;
}
</script>
{
a[i].innerHTML="";
}
<DIV>在这些td,tr之上。
<html>
<head>
<script type="text/javascript" language="javascript">
function show(){
//取得文档所有的<a href>链接
var a=document.getElementsByTagName("a");
if (a!=null){
//遍历所有链接
for(var i=0;i<a.length;i++){
//如果链接的值(页面显示内容)为“22222222”
if(a[i].innerHTML=="22222222"){
//取得此连接的ID,取得上层的DIV,不管什么方法能取道上层DIV的ID就可以
//var objs=document.getElementById("a的id");
//隐藏此DIV
//不能直接取得DIV的ID,要根据链接内容取得ID
a[i].parentNode.style.display="none";
}
}
}
}
</script>
</head>
<body onload="show()">
<div id="as">
<a href="aaaaa" id="as">11111111</a>
</div>
<div id="as1">
<a href="eeeee" id="as1">22222222</a>
</div>
<div id="as2">
<a href="aaaaa" id="as2">33333333</a>
</div>
<div id="as3">
<a href="eeeee" id="as3">44444444</a>
</div>
</body>
</html>
<head>
<script type="text/javascript" language="javascript">
function show(){
//取得文档所有的<a href>链接
var a=document.getElementsByTagName("a");
var p;
for(var i=0;i<a.length;i++){
if(a[i].innerHTML=="22222222"){
p=a[i].parentElement?a[i].parentElement:a.parentNode;
p.style.display="none";
}
}
}
</script>
</head>
<body onload="show()">
<div id="as">
<a href="aaaaa" id="as">11111111</a>
</div>
<div id="as1">
<a href="eeeee" id="as1">22222222</a>
</div>
<div id="as2">
<a href="aaaaa" id="as2">33333333</a>
</div>
<div id="as3">
<a href="eeeee" id="as3">44444444</a>
</div>
</body>
</html>
var objs=document.getElementById("a的id");
//隐藏此DIV
//不能直接取得DIV的ID,要根据链接内容取得IDfor(var i=0;i<a.length;i++){
var ss = a[i].parentNode // 这样就获取了上层节点
var len = a[i].parentNode.childNodes.length;
for(var j=0;j<len;j++){
a[i].parentNode.childNodes[j].innerHTML ///自己判断内容即可
}
// 通过 a[i].parentNode.childNodes[j].innerHTML 获取全部子节点数量,然后循环判断节点的innerHTML即可
}
我写的不对,我想隐藏的是DIV,不是单个上层元素。
如:<body onload="show()">
<table>
<div id="as">
<tr>
<td>链接1:</td>
<td>
<a href="aaaaa" id="as">11111111</a>
</td>
</tr>
</div>
<div id="as1">
<tr>
<td>链接2:</td>
<td>
<a href="eeeee" id="as1">22222222</a>
</td>
</tr>
</div>
<div id="as2">
<tr>
<td>链接3:</td>
<td>
<a href="aaaaa" id="as2">33333333</a>
</td>
</tr>
</div>
<div id="as3">
<tr>
<td>链接4:</td>
<td>
<a href="eeeee" id="as3">44444444</a>
</td>
</tr>
</div>
</table>
</body>不隐藏显示出来是:
链接1: 11111111
链接2: 22222222
链接3: 33333333
链接4: 44444444
隐藏后:
链接1: 11111111
链接3: 33333333
链接4: 44444444
功能是:我在文档中找到“22222222”,然后隐藏相对应的那个DIV