简体   繁体   English

如何获得具有相同类名的span元素名称

[英]How to get the span element name having the same class name

I want to get the name of the span element by using javascirpt and following is the code. 我想通过使用javascirpt获取span元素的名称,以下是代码。

HTML 的HTML

<span class="myClass" name="q1"></span>
<span class="myClass" name="q1"></span>
<span class="myClass" name="q1"></span>

JS JS

var spans = document.getElementsByClassName("myClass");
              j=1;
              for(var i=0; i < spans.length; i++){
                 alert("i value is==>"+i);                
                  spans[i].innerHTML=j;
            var obj=spans[i];
            alert("name==>"+obj.name);
                  j++;                  
              }

Please suggest and as name getting undefined. 请提出建议,并且名称变得不确定。

In jQuery it would be: 在jQuery中,它将是:

$('.myClass').each(function(){
    console.log( $(this).attr('name') )
})

  $('.myClass').each(function(){ console.log( $(this).attr('name') ) }) 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <span class="myClass" name="q1"></span> <span class="myClass" name="q1"></span> <span class="myClass" name="q1"></span> 

If you want to get the name attribute of an element, you have to use getAttribute function. 如果要获取元素的name属性,则必须使用getAttribute函数。

Your solution ( ES5 ): 您的解决方案( ES5 ):

 var spans = document.getElementsByClassName("myClass"), j = 0; for (var i = 0; i < spans.length; i++) { alert("i value is==>" + spans[i].getAttribute('name')); spans[i].innerHTML = j; var obj = spans[i]; alert("name==>" + obj.getAttribute('name')); j++; } 
 <span class="myClass" name="q1"></span> <span class="myClass" name="q1"></span> <span class="myClass" name="q1"></span> 

ES6 solution. ES6解决方案。

 let elems = document.getElementsByClassName('myClass'); Array.from(elems).forEach(v => console.log(v.getAttribute('name'))); 
 <span class="myClass" name="q1"></span> <span class="myClass" name="q1"></span> <span class="myClass" name="q1"></span> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM