2015-09-25 41 views
1

如果元素中的元素已經存在與此代碼,如何防止重新發現元素?JQuery檢查元素中是否存在追加元素,如果不附加到類但不是這

<div class='weekHourValue' data-nameDay='Tuesday' data-week='34' data-day='10' data-month='5' data-year='2015'><div class='singleYearEvent'></div></div> 
<div class='weekHourValue' data-nameDay='Tuesday' data-week='34' data-day='10' data-month='5' data-year='2016'></div> 

,現在我想somethink這樣

$(".weekHourValue[data-month='5'][data-day='10'] {where not exist in element}").append("<div class='singleYearEvent'></div>");

是否有任何jQuery函數也是這樣嗎?謝謝!

+0

好像你應該能夠使用jQuery選擇讓所有'weekHourValue'正確的日期和月份的元素,然後通過他們每個人的檢查,看是否有其中一個通過過濾功能具有適當的子元素。 –

回答

2

你可以試試:

$(".weekHourValue[data-month='5'][data-day='10']").each(function(){ 
    if (!$(this).find(".singleYearEvent").length) 
     $(this).append("<div class='singleYearEvent'></div>"); 
}); 
+0

可以通過使用['.filter'](http://api.jquery.com/filter/)來改善嗎? –

+0

並非如此,因爲之後不需要迭代/操作已過濾的集合。 –

+0

好的,謝謝你,我認爲JQuery有一些想法,比如'這裏不在parrent' – koca79331