【问题标题】:How to get innerHTML of this element in javascript?如何在javascript中获取此元素的innerHTML?
【发布时间】:2011-12-02 05:13:17
【问题描述】:

很简单的问题。我有一个元素(一个标签),它有一个 onclick 来调用一个 javascript 函数。在其他事情中,我希望这个函数回显调用它的元素的 innerHTML。所以,在这种情况下,就是 atag 的 innerHTML。

我该怎么做?

【问题讨论】:

    标签: javascript dom this innerhtml


    【解决方案1】:
    <element onClick="alert(this.innerHTML);"> ... </element>
    

    【讨论】:

    • 不错的尝试,但它有点忽略了我所说的调用 javascript 函数的事实
    • “有效”还不够。过时的原因是因为它的做法很糟糕。
    • this.innerHTML 是重要的部分,所以它是一个有效的答案。
    • +1 内联处理程序没有问题。它们非常有用,可以解决或简化一些问题。
    • +1 表示非常有效的建议,它不需要您在元素外部构建函数来调用以引用回元素本身来处理其自己的内容
    【解决方案2】:

    标记:

    <element id="foo"> ... </element>
    

    js:

    document.getElementById('foo').addEventListener('click', fn);
    
    function fn(){ alert(this.innerHTML); }
    

    http://jsfiddle.net/g7Bau/2/

    这里要注意的重要一点是,它基本上回答了您的问题,即事件侦听器在调用时将this 绑定到导致事件触发的 DOM 节点。所以我们可以在函数中使用this,它是通用的。您可以添加另一个元素,并使用fn 绑定一个点击侦听器,并且一个函数适用于两个元素。

    【讨论】:

    • @Raynos,你是对的。根据 HTML5 规范,所有主要浏览器的趋势是使其可选。这显然不是一个跨浏览器的解决方案,因为
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-27
    • 2013-09-18
    • 1970-01-01
    • 2011-06-07
    • 2011-12-11
    • 2023-01-09
    相关资源
    最近更新 更多