2017-01-10 5 views
0

자바 스크립트/JQuery와 다른 형식의 두 날짜를 비교하지만 첫 데이트에 한 가지 문제가있다 :내가 마지막 방문에서 추가 된 새로운 항목을 강조하기 위해 다른 형식으로 두 날짜를 비교하기 위해 노력하고있어

jQuery("td.details > span:last-child").each(function() { 
    var a = jQuery(this).text(); 
    var b = a.split('/'); 
    var c = b[1]+'/'+e[0]+'/'+e[2]; //dd.mm.yyyy=>mm.dd.yyyy 
    var d = new Date(c); 
    var date = d.getTime(); 

    jQuery('<span/>', { 
    'class':'date', 
    'text': date, 
    }) .appendTo("td.details > p"); 
}); 

HTML은 :

<td class="details"><p>new item1</p><span>10/1/2017 17:06</span></td> 
    <td class="details"><p>new item2</p><span>09/1/2017 22:26</span></td> 
    <td class="details"><p>new item3</p><span>09/1/2017 11:18</span></td> 
    <td class="details"><p>new item4</p><span>08/1/2017 14:32</span></td> 

모든 td 다른 날짜가, 기대는 모든 tdd.getTime() 적절한 값 (단지 테스트)와 span을 만들었지 만 새로 span 생성됩니다에 모든 01 포함(각 td에서)뿐만 아니라. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

둘째 날은 모든 td에 대한 (lastvisit) 동일합니다 그래서 아무 문제

+0

'.appendTo ("td.details> p");는 "모든 td.details의 모든 p에 추가"라고 말합니다. 현재 범위로 범위를 지정해야합니다. 추측해볼 때 이것은 작동 할 수 있습니다 (따라서 주석이 답을 내지 못합니다) : .appendTo ($ (this) .closest ("td"). find (". details> p")); –

+0

이 작동하지 않았지만'.appendTo (this)'는 매우 효과적입니다. – Nidecker

답변

0

이 작품 더 나은 것인가? 코드에서

jQuery('<span/>', { 
    'class':'date', 
    'text': date, 
}).after(this); 

당신은 모든 td.details > p뿐만 아니라 현재에 date를 추가한다. .after()은 마지막 범위를 td 내에 추가합니다

+0

오, "이"작은 것. 고맙습니다! ** 편집 : ** .after는 작동하지 않았고 .appendTo는 정상적으로 작동합니다. – Nidecker