2010-12-21 2 views
0

누구에게도 대안이 있는지 궁금합니다.부풀린 jquery xml 요청

  $(xml).find("a").each(function(){ 
      $(this).find('b').each(function(){ 
       $(this).find('c').each(function(){ 
        $(this).find('d1').each(function(){ 
         sectionValidation.RegisterTerms.setRegisterTermsArray(this); 
        }); 
        $(this).find('d2').each(function(){ 
         sectionValidation.RegisterTerms.checkValidVariations(this, val); 
        }); 
       }); 
      }); 
     }); 

중첩 된 xml 데이터를 가져 오는 데는 실제로 비싸고 우아한 접근 방식이 필요합니다. 주셔서 감사합니다

답변

1

당신은 적어도이처럼 decendant selector (공간 사이)로 a 통해 c 선택을 결합 할 수 있습니다 :

$(xml).find("a b c").each(function(){ 
    $(this).find('d1').each(function(){ 
     sectionValidation.RegisterTerms.setRegisterTermsArray(this); 
    }); 
    $(this).find('d2').each(function(){ 
     sectionValidation.RegisterTerms.checkValidVariations(this, val); 
    }); 
}); 

을 다른 들어, 그것은에 관해서는 문서의 크기에 따라 달라집니다 이것이 더 빠를 것이라면 :

var $xml = $(xml); 
xml.find("a b c d1").each(function(){ 
    sectionValidation.RegisterTerms.setRegisterTermsArray(this); 
}); 
xml.find("a b c d2").each(function(){ 
    sectionValidation.RegisterTerms.checkValidVariations(this, val); 
}); 
+0

그것은 완벽합니다. Nick, 고마워요! –