2013-05-04 1 views
0

이 XML의 일부입니다 : -체크 문자열 값

<products> 
    <product_id value="1"> 
    <tab_id value="351"> 
     <tab_name value="test1"/> 
     <date value="2013\05\10 12:30:00" /> 
    </tab_id> 
    </product_id> 
    <product_id value="2"> 
    <tab_id value="352"> 
     <tab_name value="test2"/> 
     <date value="2013\05\12 12:00:00" /> 
    </tab_id> 
    </product_id> 
</products> 

내가 하나 개의 변수에 문자열을 다음 있습니다 : - 여기

var result_date="2013\05\10,2013\05\11,2013\05\12,2013\05\13"; 

내가 result_date 모든를 확인하려면 날짜는 xml 파일 요소 date입니다.
javascript 및 xpath를 사용 중입니다.
result_date는 XML date에 일치하는 다음 product_id
내가 yyyy/mm/dd hh:mm:ss-yyyy/mm/dd
예상 출력을 확인하는 방법을 잘 모릅니다 가 반환하는 경우 : - MY XML 파일에

1,2 

이 모두 product_id.
도와주세요. 문자열 - 이전 날짜의 공백이 변수 result_date의 일부인 PRODUCT_ID 검색

var path="//product_id[contains('" + result_date+ "',substring-before(date/@value ,' '))]"; 

:

+1

JavaScript에는 기본 XPath 지원이 없으므로 어떤 XPath 라이브러리를 사용하고 있습니까? – Tomalak

답변

2

당신이 찾고있는 xpaht 표현 같은 것을해야 thansk
.

대부분의 브라우저 지원은 "평가"(IE 제외)입니다.

var nodes=xml.evaluate(path, xml, null, XPathResult.ANY_TYPE, null); 
var result=nodes.iterateNext(); 
while (result) 
    { 
    document.write(result.attributes.value.nodeValue); 

    document.write("<br>"); 
    result=nodes.iterateNext(); 
    } 

"result_date"가 const 문자열 인 경우. 탈출을 알고 있어야합니다.

var result_date='2013\\05\\10,2013\\05\\11,2013\\05\\12,2013\\05\\13';