js获取父级元素

<span id="138482349952154">
<div>
<script>
//这里怎样写才能获取到span的id,div层的id和name是不知道的,原始js代码
</script>
</div>
</span>

1、打开编辑工具editplus,点击editplus菜单栏上的【File】-->New -->HTML page。

2、新建好html页面后,editplus自动帮助我们生成了框架,先把title修改下,然后保存。

3、在body区域里添加了子,父,祖父三级div,代码如下。

4、演示代码写好后,打开浏览器,在浏览器上运行看看效果。

5、下面在head区域里添加实现js获取最高父级的代码,代码具体如下,这样利用了while循环来判断的。

6、实现好后,保存代码,此时再到浏览器上刷新访问,看下,此时弹出对话框告诉最后父级是zufu。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-22

1、首先创建一个div,里面再创建一个p元素,通过p元素来获取他的父元素div。

2、接下来我们用js来获取p元素。

3、这样我们就得到p元素,并获得了它的值,看看结果。

4、接下来我们就来获取这个p元素的父元素。

5、通过parentNode就能得到它的上一级元素了(父元素),同时我们打印了div中的html内容,看看结果。

本回答被网友采纳
第2个回答  推荐于2017-11-26
window.onload = function(){
    //获取所有span
    var s = document.getElementsByTagName("span"), len = s.length;
    //获取span的id
    for(var i=0;i<len;i++){
        //这里要一些条件来筛选你要选择的span
        if("" != s[i].id){
            alert(s[i].id);
        }
    }
};

追问

span里面只有id,没有其他标识,span的id是不知道具体的值,目前只知道写js代码的地方上一层是div,再上一层是span,就只有这两个信息

追答

这个和js的代码位置是无关的呀,js又不能根据自己的代码位置来判断自己是否在一个div容器里面。。。

追问

因为span和div都不是我输出的,只有js代码可以让我这边写,但是其中需要的参数,必须要获取到span的id,比较麻烦

本回答被网友采纳
第3个回答  2014-08-20

给你的div一个ID,假定是div1吧

document.getElementById("div1").parentElement.id

追问

div层的id和name是不知道的,id和name是变化的,我是不知道的,不能自己设定

追答

你首先一定要能有一个办法找到这个DIV,才能往父层走

第4个回答  推荐于2016-03-19

给你弄出来了

<span id="138482349952154">
     <div>
<script>
document.write("<input type='hidden' id='abc' />");
var abc = document.getElementById("abc");
alert(abc.parentNode.parentNode.id);
</script>
    </div>
</span>

追问

    ie这种写法不行呢

本回答被提问者采纳