【问题标题】:How to pass an alt attribute in an on click method如何在点击方法中传递 alt 属性
【发布时间】:2020-11-14 22:05:40
【问题描述】:

您好,我有以下代码:

<img alt="image321" onclick="image(//here i want to pass the alt attribute to my function Bild()//);" src="http://i3.ytimg.com/vi/${videoId}/hqdefault.jpg" />


<script>
        function image(alt){
            
            alert(alt.src);
            
        }
</script>

我有我的图像,并给它一个值为“image321”的 alt 属性。现在我想将此值传递给我的函数 image(),并在单击图像后立即输出带有警报的值。但输出始终是未定义的。有人可以帮我解决这个问题。 许多问候尼尔斯

【问题讨论】:

    标签: javascript html onclick alt


    【解决方案1】:

    首先是avoid inline handlers - 他们有很多问题,现在太多不值得使用,例如疯狂的范围链和引号转义问题。改为使用带有 addEventListener 的 Javascript 正确附加事件侦听器。

    在侦听器内部,引用this 以获取单击的元素,并引用其src 属性以获取其src

    document.querySelector('img').addEventListener('click', function() {
      console.log(this.src);
      console.log(this.alt);
    });
    &lt;img alt="image321" src="http://i3.ytimg.com/vi/${videoId}/hqdefault.jpg" /&gt;

    【讨论】:

      【解决方案2】:

      function myfunc(img){
                  
                  alert(img.alt);
                  
              }
      &lt;img alt="image321" onclick="myfunc(this);" src="http://i3.ytimg.com/vi/${videoId}/hqdefault.jpg" /&gt;

      【讨论】:

        【解决方案3】:

        您应该尝试使用this,它会发送您运行函数时使用的元素。

        这是一个例子:

        function image(alt) {
        alert(alt.src);
        }
        &lt;img alt="image321" src="http://i3.ytimg.com/vi/${videoId}/hqdefault.jpg" onclick="image(this)"/&gt;

        【讨论】:

          猜你喜欢
          • 2020-07-24
          • 1970-01-01
          • 2018-07-05
          • 2017-07-29
          • 2014-03-22
          • 2015-10-08
          • 1970-01-01
          • 2018-11-15
          • 1970-01-01
          相关资源
          最近更新 更多