2013-05-24 4 views
2

자바 스크립트로 개발 중이므로 클릭 한 요소의 xpath를 가져와야합니다. 내가 ID를 얻기 위해 우리가 할 수 있다는 것을 알고 :자바 스크립트에서 요소의 xpath 가져 오기

element.onclick = function(event) 
{ 
    var target_id = event.target.id; 
} 

가 어떻게이 XPath를 얻을 할 수 있을까?

감사합니다.

답변

0

XPath로 요소에 액세스하는 방법은 여러 가지가 있습니다. 예를 들어, 노드 이름 또는 속성 또는 하위 노드 중 하나의 값으로 액세스 할 수 있습니다. 그래서 당신은 자바 스크립트가 그 중 하나를 정확하게 기대할 수 없습니다.

하지만 ID를 가지고, 요소에 액세스 할 수있는 간단한 XPath 쿼리는 다음과 같습니다 여기

//*[@id="THE_ID"] 
+0

나는 그의 xpath와 함께 요소를 얻을 필요가 없다. 나는 xpath를 얻을 필요가있다. 클릭 한 요소의 – user2302725

+0

예, 알고 있습니다 (이미 가지고 있습니다). 답을 다시 읽으십시오. 찾고있는 * 경로 *는'// * [@ id = "THE_ID"]' – hek2mgl

+0

XPath 표현식이 아닌'DOM Path'를 검색하는 것처럼 들립니다. (DOM 경로가 유효한 XPath 표현식 임에도 불구하고) [이 질문]을 확인하십시오 (http://stackoverflow.com/questions/5728558/jquery-get-the-dom-path-of-the-clicked-a) – hek2mgl

0

:의

function getXPath(node){ 
    if(node.hasAttribute("id")){ 
     return '//' + node.tagName + '[@id="' + node.id + '"]'; 
    } 

    if(node.hasAttribute("class")){ 
     return '//' + node.tagName + '[@class="' + node.getAttribute("class") + '"]'; 
    } 

    var old = '/' + node.tagName; 
    var new_path = this.xpath(node.parentNode) + old; 

    return new_path; 
} 
관련 문제