V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
maloneleo88
V2EX  ›  JavaScript

请问,这种情况如何再去找到相邻 DOM 节点?

  •  
  •   maloneleo88 · 7 天前 · 824 次点击
    <tr><td>按钮</td><td>这里面有想要的值</td>...
    <tr><td>按钮</td><td>这里面有想要的值</td>...
    <tr><td>按钮</td><td>这里面有想要的值</td>...
    <tr><td>按钮</td><td>这里面有想要的值</td>...
    ....

    我用 jQuery 找到节点,for 循环建里一排按钮在 td1,然后绑定一个 处理函数

    现在想没点击一个按钮,获得这个按钮兄弟 td 里面的某些内容。内容我也能提取。 关键在这个 “处理函数”中我怎样才能获得某按钮的兄弟 td 呀? 用什么方式? 看了看 this 方法 没弄明白 求助!!!
    第 1 条附言  ·  7 天前
    代码如下:

    var g = $(".th-bg:first").siblings();
    for (var i = 0; i < g.length; i++){
    g.eq(i).children("td:first").append('<button onclick="analysis()">BTTS</button>');
    //var homeId = g.eq(i).children("td:eq(2)").children("a:eq(0)").attr('href').slice(17,-5);
    //var awayId = g.eq(i).children("td:eq(4)").children("a:eq(0)").attr('href').slice(17,-5);
    }

    function analysis(){
    console.log($(this))
    }

    我知道怎么去选择兄弟父子元素, 我就是想知道通过什么方法 可以在 analysis 函数中获取当前这个按钮的元素节点,然后我在从这个元素节点去获取其他节点里需要的参数。

    我用$(this) 不可以, 或者是我用错了?
    12 条回复    2021-05-04 02:10:03 +08:00
    maloneleo88
        1
    maloneleo88   7 天前 via Android
    用 jQuery 的 $this 方法 能获得当前元素的兄弟节点吗?应该怎么用呢
    laoyur
        3
    laoyur   7 天前 via Android
    xpath 不考虑吗,following-sibling::td/text()秒拿
    maloneleo88
        4
    maloneleo88   7 天前 via Android
    @laoyur
    @autoxbc
    都考虑呀,我不会啊 看不懂, 我以为用$(this)可以 咋返回的好像是当前窗口对象😧
    maloneleo88
        5
    maloneleo88   7 天前 via Android
    @autoxbc 例子举简单了, 我想点击任意按钮 在'处理函数'中访问当前元素的父元素的父元素的后 2 个兄弟元素里的内容 和 后 4 个元素里某子元素的属性
    faqqcn
        6
    faqqcn   7 天前
    siblings 或者 next
    maloneleo88
        8
    maloneleo88   7 天前
    @xutao881 怎样才能获取当年点击的这个按钮的 元素节点呢?
    7gugu
        9
    7gugu   7 天前
    考虑一下事件捕获?
    maloneleo88
        10
    maloneleo88   7 天前 via Android
    靠 我会了 在循环传入 this analysis(this) 这样在处理函数 就能得到这个节点了应该 我去试试
    wanv1171
        11
    wanv1171   7 天前
    function analysis(e){
    console.log($(e.target))
    }
    maloneleo88
        12
    maloneleo88   7 天前 via Android
    @wanv1171 是啊 自己搞定了,试出来了🤒
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2933 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 17ms · UTC 01:08 · PVG 09:08 · LAX 18:08 · JFK 21:08
    ♥ Do have faith in what you're doing.