簡體   English   中英

如何獲取<span>值?

[英]How to get < span > value?

有一段代碼,但是不能使用<id>標簽。

那么,如何到達<span> 1 2 3 4

<div id="test">
    <span>1</span>
    <span>2</span>
    <span>3</span>
    <span>4</span>
<div>

試試這個

var div = document.getElementById("test");
var spans = div.getElementsByTagName("span");

for(i=0;i<spans.length;i++)
{
  alert(spans[i].innerHTML);
}
var test = document.getElementById( 'test' );

// To get the text only, you can use "textContent"
console.log( test.textContent ); // "1 2 3 4"

textContent是標准方式。 innerText是用於舊版IE的屬性。 如果您希望盡可能使用跨瀏覽器,請遞歸使用nodeValue

沒有jQuery標簽,所以我假設是純JavaScript

var spanText = document.getElementById('targetSpanId').innerText;

是你需要的

但在你的情況下:

var spans = document.getElementById('test').getElementsByTagName('span');//returns node-list of spans
for (var i=0;i<spans.length;i++)
{
    console.log(spans[i].innerText);//logs 1 for i === 0, 2 for i === 1 etc
}

這是一個小提琴

純javascript就是這樣的

var children = document.getElementById('test').children;

如果你使用的是jQuery,那就像這樣

$("#test").children()
<div id="test">
    <span>1</span>
    <span>2</span>
    <span>3</span>
    <span>4</span>
</div>
<div id="test2"></div>

<script type="text/javascript">
    var getDiv = document.getElementById('test');
    var getSpan = getDiv.getElementsByTagName('span');​​​
    var divDump = document.getElementById('test2');

    for (var i=0; i<getSpan.length; i++) {
        divDump.innerHTML = divDump.innerHTML + ' ' + getSpan[i].innerHTML;
    }
</script>

您可以使用querySelectorAll獲取所有span元素,然后使用新的ES2015(ES6)擴展運算符轉換StaticSeodeAllList,返回數組的span,然后使用map運算符獲取項目列表。

見下面的例子

 ([...document.querySelectorAll('#test span')]).map(x => console.log(x.innerHTML)) 
 <div id="test"> <span>1</span> <span>2</span> <span>3</span> <span>4</span> <div> 

您需要更改以下代碼: -

<html>
<body>

<span id="span_Id">Click the button to display the content.</span>

<button onclick="displayDate()">Click Me</button>

<script>
function displayDate() {
   var span_Text = document.getElementById("span_Id").innerText;
   alert (span_Text);
}
</script>
</body>
</html>

執行此操作后,您將獲得警報中的標記值。

var test = document.getElementById( 'test' ).innerHTML;

它會更好用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM