2014-09-27 2 views
-2

이 코드에서 전화 번호를 얻으려면 어떻게해야합니까?이 코드 유형에서 문자열 가져 오기

<div class="fl contact_item notLast"> 
    <div class="grayPhone sprite-grayPhone fl icnLink"></div> 
    <div class="fl"> 
    <script> 
    ... 
    </script>1 (877) 530-0360 
    </div> 
</div> 

나는이 코드로 성공을 거뒀습니다.

if($(pageDetailsSecond).find('div.grayPhone > div.fl').length) { 
var card_Phone = $(pageDetailsSecond).find('div.grayPhone').text(); } 
else { var card_Phone = ''; } 

누구나 나를 도와주세요.

감사합니다. 잘못된 사업부에서 찾고

+0

귀하의 코드는 전화 번호가 내부 즉'grayPhone' –

+0

클래스와 일 안에 아이'div'이 없었'div.fl'가 아닌'div.grayPhone' – techfoobar

+0

는 항상 DOM 구조는 유사하다? – scunliffe

답변

0

이 시도 : 당신은 항상 script 태그가있을 것으로 추정 할 필요가 있기 때문에 이것은 div 내부, 상당히 "약한"접근이라고

var phoneNumber = $('div.fl script').parent().text(); 

참고하면 신경 쓰지 말고 ... fl의 클래스가 있으며 페이지의 다른 위치에 다른 태그 조합이 없다는 사실을 알고 있어야합니다.

div에는 여전히 구문 분석해야하는 전화 번호의 일부가 아닌 다른 텍스트가 포함될 위험이 있습니다.

+0

'$ ('div.fl')와 같지 않습니까? text()'? – techfoobar

+0

아, 맞아. 그건 의미가 있습니다. – techfoobar

+1

비슷하지만 3 개의 div에 표시된 모든 클래스는 'fl' 클래스를 가지므로 스크립트 태그가있는 div를 찾습니다. 이상적으로는 주변 DOM 및/또는이 코드가 얼마나 동적인지에 대해 더 자세히 알아야합니다. 예 : 케이스마다 중첩이 얼마나 바뀌는가. – scunliffe

0

이 코드를 사용해보십시오. 너는 틀린 단면을보고 있었다.

if($('.contact_item').find('div.fl').length) { 
var card_Phone = $('.contact_item').find('div.fl').text(); 
alert(card_Phone); } 
else { var card_Phone = ''; }