qqqq72858
2018-08-22 02:43
采纳率: 50%
浏览 1.9k

如何通过document对象来获取select标签下option元素的element对象?

需求:自动生成目标元素的Xpath字符串
目前思路:对document对象添加事件监听,当对页面元素进行操作时,获取activeElement,然后生成Xpath
问题:目前input的text,Button,radio和checkbox测试都没问题,但是当操作select标签下的option时,activeElement返回的还是select的element对象
有什么办法能获取到option的element对象吗

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 天际的海浪 2018-08-22 05:44
    已采纳
        var act = document.activeElement;
        if (act.tagName=="SELECT" && act.selectedIndex>=0) {
            act = act.options[act.selectedIndex];
        }
        alert(act.tagName);
    
    
    点赞 打赏 评论
  • tongkaiming 2018-08-22 02:49

    可通过遍历表单的 elements[] 数组来访问某个 Select 对象

    点赞 打赏 评论
  • _zming 2018-08-22 03:00

    用jquer啊,$(document).find("select option").each(function(i, optElem){

    //optElem为opt对象
    

    });
    如果非得用纯js那么可以使用getElementsByTagName方法,返回一个元素数组,如document.getElementsByTagName("select"),再调用返回元素的
    selecElement。getElementsByTagName(“option”)获取option元素

    document的常用方法:
    getElementById 获取对 ID 标签属性为指定值的第一个对象的引用。
    getElementsByName 根据 NAME 标签属性的值获取对象的集合。
    getElementsByTagName 获取基于指定元素名称的对象集合。

    点赞 打赏 评论

相关推荐 更多相似问题