2014-10-11 1 views
0

이 코드는 jQuery find() 및 여러 if 문을 사용하여 HTML 문서에서 특정 텍스트를 추출합니다.jQuery 선택기를 사용하여 HTML 파서 코드 간소화

if 문을 제거하고 코드의 맨 윗줄에있는 find()의 jQuery 선택기로 해석하려고합니다. 이것이 가능한가? 그렇다면 선택자는 무엇이 필요합니까?

$(document).find("a[href^='http://fakeURL.com/']").each(function() 
{           
    var title = $(this).text(); 
    var url = $(this).attr('href'); 

    if(title.indexOf('Re: ') != 0) 
    { 
     if($(this).parent().attr('class') != 'quoteheader') 
     { 
      if(url.indexOf('topic') == 36) 
      { 
       if($(this).parent().attr('class') == 'middletext') 
        { 

         console.log(title); 

        } 
      } 
     } 
    } 
}); 

답변

0

내가 마지막으로 남긴 항목은 색인 36에 있는지 확인하고 싶습니다. 셀렉터를 통해 가능한 모든 것이 셀렉터까지 올라 갔는지 확인하십시오 (코드 테스트를 거치지 않은 코드는 테스트해야합니다)

+0

'if'안에 제목을 인쇄하면됩니다. 내부에서가 아니라'if' 문 밖에서 텍스트를 가져 오는 것은 낭비입니다. – vsync

+0

이것에 관해서는 당신이 옳았지 만, Farad는 최소 if 문을 원했습니다. – Ido

+0

에 관계없이'$ (this) .text()'줄을'if' 문 안에 넣어야합니다. 밖에서. – vsync

관련 문제