Jestem całkiem nowy w programowaniu i muszę wygenerować ścieżkę Xpath po kliknięciu elementu html. na przykład: jeśli kliknąłem na pole tekstowe nazwy użytkownika, powinienem podać mi ścieżkę xpath, taką jak html/head/body/tr [1]/table [2] ..... itd. Najważniejsze jest to, że nie mogę używać firebuga, ponieważ moja aplikacja jest uruchomiona na IE. Widziałem wiele fxn, aby uzyskać xpath i próbowałem ją zintegrować, ale nie otrzymuję wartości zwracanej. Prosty fragment kodu, w którym użyłem funkcji kliknięcia() jquery, aby pobrać wartość, nie działa. Rzecz polega na tym, że nie mogę przekazać elementu html w funkcji. Funkcja xpath została pobrana tylko z tej strony. Mój kod znajduje się poniżej.Jak uzyskać xpath przez kliknięcie elementu html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>click demo</title>
<style>
p
{
color: red;
margin: 5px;
cursor: pointer;
}
p:hover
{
background: yellow;
}
</style>
<script src="http://code.jquery.com/jquery-1.9.1.js">
</script>
</head>
<body>
<p id ="test">First Paragraph</p>
<p>Second Paragraph</p>
<p>Yet one more Paragraph</p>
<script>
$("#test").click(function() { var value= $(this).getXPath();
alert(value) });
function getXPath(element)
{
var val=element.value;
alert("val="+val);
var xpath = '';
for (; element && element.nodeType == 1; element = element.parentNode)
{
alert(element);
var id = $(element.parentNode).children(element.tagName).index(element) + 1;
id > 1 ? (id = '[' + id + ']') : (id = '');
xpath = '/' + element.tagName.toLowerCase() + id + xpath;
}
return xpath;
}
</script>
</body>
</html>
wielkie dzięki. Jego działanie. – Piyush
Świetnie, czy mógłbyś zaznaczyć jako odpowiedź. –
działa nicelly ty – themis