2012-03-06 2 views
-2

다음 자바 스크립트가 있는데 dvservicestitle 클래스의 div와 dvservicescontent가있는 div의 모든 li 태그에서 텍스트를 가져 오는 여러 가지 방법을 시도했습니다. 수업. 나도 왜 일하는지 모르겠다. 누구든지이 코드의 문제점을 알고 있습니까?이 jquery 객체에서 올바른 결과를 얻을 수 없습니다.

if (html == "") html = "<div class='dvservicestitle'>Our Services</div><div class='dvservicescontent'><ul></ul></div>"; 

var title = $(html).find(".dvservicestitle"); 
var elements = $("dvservicescontent li", $(html)); 
+2

을 "어느 작품은"문제 설명이 아니다. 어떤 노력은 제발 –

답변

0

이유입니다. HTML 변수가 찾고있는 div이므로 find() 메서드가 찾지 못합니다. 다른 컨테이너에 포장해야합니다.

html = "<div class='dvservicestitle'>Our Services</div><div class='dvservicescontent'><ul></ul></div>"; 
$(html).find(".dvservicestitle") 
>> [] 

$(html).hasClass("dvservicestitle") 
>> true 

html = "<div><div class='dvservicestitle'>Our Services</div><div class='dvservicescontent'><ul></ul></div></div>" 

$(html).find(".dvservicestitle") 
>> [<div class=​"dvservicestitle">​Our Services​</div>​] 
+0

감사합니다. 나에게 어려움을주고 있었던 것은 주위의 div이었다. –

-2
var title = $(html).find(".dvservicestitle").html(); 
var elements = $(html).find('.dvservicescontent ul').children(); 
+1

아무 말도 없습니까? 서식을 지정하지 않으셨습니까? 급히? –

+0

LOL 나는 엔터 키를 닦았 고 편집을했다. 60 초 안에 두 사람이 거칠게 결심합니다. – Tom

+0

"입력"키는 텍스트 상자에서 응답을 제출하지 않습니다. 개행을 생성합니다. 그리고 당신의 대답은 여전히 ​​설명이나 문맥을 포함하고 있지 않습니다. 두 줄의 코드 만 덤프합니다. 학습에 전적으로 유용하지는 않습니다. –

0

당신이 사용할 수있는 다음 find() 방법은 현재 노드에 자식 노드를 발견하기 때문에

var title = $(".dvservicestitle").text(); 
var elements = $(".dvservicescontent li").text(); 
0

.find 당신이 가지고 있지 않은 자손을 검색합니다. 검색 할 div가 최상위 수준에 있으므로 jQuery 객체의 요소 중 하나입니다.

사용 .filter 올바른 요소 필터링 :

$(html).filter(".dvservicestile").text(); 
관련 문제