簡體   English   中英

循環時,為什么jQuery返回span元素內容的每個字符?

[英]Why is jQuery returning each character of the contents of my span element when I loop it?

好吧,我有一班結束時間課。 我想獨立獲取其他內容。

<span class='endtime'>
  2011-03-29 00:01:03
</span>

<span class='endtime'>
 2011-03-31 19:20:11
</span>

<span class='endtime'>
 2011-03-28 19:00:12
</span>

但是問題是,當我這樣做時:

var text = $('.endtime').text();
for(var i = 0; i < text.length; i++) {
      $('.counter').countdown({
            until: text[i],
            format: 'HMS'
      })
}

文字內容只包含1個字符? 如何使其返回整個字符?

調用.text()您可以選擇傳入一個函數,以對集合中的每個項目執行。

$("span.endtime").text(function(i, text){
      $('.counter').countdown({
            until: text,
            format: 'HMS'
      })
});

jsfiddle上的簡單示例。

text()返回第一個元素的字符串 ,而不是所有元素的所有文本!

要遍歷所有元素,請嘗試以下操作:

$('.endtime').each(function(){
   var text = $(this).text();
   //something with text
});

如果您真的想要一個數組 ,也可以編寫:

var texts = $('.endtime')
             .map(function(){return $(this).text();})
             .get();
// texts is now an array of strings.
// rest of the code is the same.

試試這個代碼

var text = $('.endtime');
for(var i = 0; i < text.length; i++) {
  $('.counter').countdown({
        until: text[i].text(),
        format: 'HMS'
  })
}

暫無
暫無

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

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