0
아래 코드는 Xpath를 생성합니다. 그러나 @value 속성/속성은 표시되지 않습니다. 그것은 잘 작동하지 않습니다.이 javascript 함수 출력을 xpath에서 @value로 만드는 방법은 무엇입니까?
function getXPath(node, path, val) {
path = path || [];
if(node.parentNode) { path = getXPath(node.parentNode, path); }
if(node.previousSibling) {
var count = 1;
var sibling = node.previousSibling
do {
if(sibling.nodeType == 1 && sibling.nodeName == node.nodeName) {count++;}
sibling = sibling.previousSibling;
} while(sibling);
if(count == 1) {count = null;}
} else if(node.nextSibling) {
var sibling = node.nextSibling;
do {
if(sibling.nodeType == 1 && sibling.nodeName == node.nodeName) {
var count = 1;
sibling = null;
} else {
var count = null;
sibling = sibling.previousSibling;
}
} while(sibling);
}
if(node.nodeType == 1) {
if (val){
path.push(node.nodeName.toLowerCase() + (node.id ?
"[@id='"+node.id+"' @value='"+val+"']" :
count > 0 ? "["+count+"]" : ''));
}else{
path.push(node.nodeName.toLowerCase() + (node.id ?
"[@id='"+node.id+"']" : count > 0 ? "["+count+"]" : ''));
}
}
return path;
};
음. 당신은 전체 날려 Javascript 기반 Xpath 파서가 아니라 dhtml 영역에서 복사 붙여 넣기 및 수정 된 최소 하나 필요합니다. –
meder, 어디에서 전체 자바 스크립트 기반 xpath 파서를 얻을 수 있습니까? –