2012-11-05 33 views
0

我有這兩個對象作爲鍵/值的地圖。第一張地圖包含了兩個不同的日期,我將在後面進行比較,其他地圖中包含的鏈接和圖像,jquery每個地圖數組不打印所有內容

var estelaresfechas = { 
    '2012-01-02': '2012-12-02', 
    '2012-01-02': '2012-12-02', 
    '2012-01-02': '2012-12-02' 
} 
//Link e imagen 
var est_link_img = { 
    '' : 'estelarAticulosEscolares_03082012.jpg', 
    'google.com' : 'estelarCuadernoProfesional_03082012.jpg', 
    '' : 'estelarLaptop_03082012.jpg' 
} 

$.each(estelaresfechas,function(key,val){ 

       $.each(est_link_img,function(index,value){ 
        var fechainiest = Date.parse(key); 
        var fechafinalest = Date.parse(val); 
        var fechainicomest = Date.today().compareTo(fechainiest); 
        var fechafinest = Date.today().compareTo(fechafinalest); 
        if(fechainicomest == 1 && fechafinest == -1){ 


         $("#slider").append("<a href='"+ index +"'><img src='img/" + value+ "'/></a>"); 

        } 
        else{ 
         console.log("nada") 
        } 
       }); 




    }) 

它做的第一件事是,它的日期進行比較,如果這兩個日期都在範圍它會將其附加到一個div與他的鏈接和圖像(該鏈接是可選的),但由於某種原因,它不打印第一個。有任何想法嗎?

+0

您使用的是日期庫嗎? – David

+0

對象鍵必須是唯一的,你的第二個鍵'''覆蓋第一個鍵。 –

+0

@KevinB你是什麼意思?我需要改變什麼? – Waymas

回答

1

這些對象都包含重複鍵:

var estelaresfechas = { 
    '2012-01-02': '2012-12-02', 
    '2012-01-02': '2012-12-02', 
    '2012-01-02': '2012-12-02' 
} 

var est_link_img = { 
    '' : 'estelarAticulosEscolares_03082012.jpg', 
    'google.com' : 'estelarCuadernoProfesional_03082012.jpg', 
    '' : 'estelarLaptop_03082012.jpg' 
} 

當您指定相同的密鑰,最後一個獲勝。

爲了簡化,寫這個...

{ 
    "a": "1", 
    "a": "2", 
    "a": "3" 
} 

...等同於寫這個:

{ "a": "3" } 

你需要選擇唯一的名稱爲您的鑰匙。

+1

或者在他的情況下,使用一組對象:'[{from:'2012-01-02',to:'2012-12- 02'},{...},...]' – mariusnn