2011-05-13 122 views
1

我想填充使用每个集合。我可以在一个字符串中获取元素,并且每次迭代都可以获取警报。我不能把两者放在一起。填充集合()

这里是我的清单:

2011/4/27下午5点42分54秒
2011/4/27下午五点43分00秒
2011/4/27下午5时46分53秒
2011/4/28 2:10:40 PM

这是我的代码。

if (chosenTime > 0) { 
    var myDateClass = $('.exceptionDate') 
    var i = 0 
    $(myDateClass).each(function() { 
     var myDateClassVal = myDateClass[i].GetAttributeNode(outerText); 
     //this currently gives an error    
     //if I switch this to myDateClass.text(); 
     // it returns the list in one string 
     i++ 
     }); 

回答

2

里面每次使用$(this).text()this是每个中的单个项目。

0

我想你感到困惑.each()

你可能想看看API:

http://api.jquery.com/each/

$(myDateClass).each(function() { 
     var myDateClassVal = myDateClass[i].GetAttributeNode(outerText); 
     i++; // This is not needed. 
     }); 

所以,如果你把它定义为each(function(indx, elem) { })它会帮助你遍历每个元素,elem,或通过索引引用它。

0

我不完全明白你的意思,但是如果你想要一个数组的每个.exceptionDate元素的文本内容,你可以使用.map().get()

var array = myDateClass.map(function() { 
    return $(this).text(); 
}).get(); 

或者以类似的方式,你可以使用jQuery.map()

var array = $.map(myDateClass,function (el) { 
    return $(el).text(); 
});