简体   繁体   English

取两个相同元素的值

[英]Taking the values of two same element

In console if I type this command: 在控制台中,如果输入以下命令:

document.querySelectorAll('div.information div.contact div ')[1]

The result I take is 我得到的结果是

<span class="information">
<call>number 1</call>
<call>number 2</call>
</span>

How can I take the innerHTML of call element? 如何获取call元素的innerHTML? Should I use the nth child? 我应该使用第nth孩子吗? Result: 结果:

number 1

and after another command 在另一个命令之后

number 2

Try this, 尝试这个,

HTML HTML

<span class="information">
  <call>number 1</call>
  <call>number 2</call>
</span>

JavaScript JavaScript的

var values = [];
var elements = document.getElementsByTagName('call');

for (var i = 0; i < elements.length; i++) {
  values.push(elements[i].innerHTML);
}

/** ["number 1", "number 2"] **/
console.log(values);

Example

JSFiddle 的jsfiddle

There's no "call" element. 没有“通话”元素。

document.getElementsByClassName() is probably more appropriate in this case, but using an ID would be even easier. 在这种情况下, document.getElementsByClassName()可能更合适,但使用ID会更加容易。

 window.onload = function() { var information = document.getElementsByClassName('information')[0] var calls = document.getElementsByClassName('call'); var numbers = []; for (var i = 0; i < calls.length; i++) { numbers.push(calls[i].innerHTML); } for (var i = 0; i < numbers.length; i++) { document.getElementById('numbers').value += numbers[i] + '\\n'; } } 
 <span class="information"> <span class="call">number 1</span> <span class="call">number 2</span> </span> <h2>Added so we can see something without looking at the console:</h2> <form name="form" id="form"> <textarea id="numbers"></textarea> </form> 

<html>
<head>
    <title>
        Practice
    </title>
</head>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        var data = document.getElementsByTagName("call");
        for(var i=0;i<data.length;++i)
        {
            var scope = $(data[i]).html();
            console.log(scope);
        }
    });
</script>
<body>
    <span class="information">
        <call>number 1</call>
        <call>number 2</call>
    </span>
</body>

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

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