Sono abbastanza nuovo alla programmazione e devo generare un percorso X facendo clic su un elemento html. per esempio: se ho cliccato sulla casella di testo del nome utente allora dovrebbe darmi il xpath come html/testa/corpo/tr [1]/tabella [2] ..... ecc ecc. La cosa principale è io non posso usare firebug dato che la mia applicazione è completamente pronta per essere eseguita su IE. Ho visto molto fxn per ottenere xpath e ho cercato di integrarlo, ma non ho ottenuto il valore di ritorno. Un semplice frammento di codice in cui ho usato la funzione jquery click() per recuperare il valore non funziona. La cosa è che non riesco a passare l'elemento html nella funzione. La funzione xpath ho preso solo da questo sito. Il mio codice è sottoCome ottenere xpath facendo clic su un elemento 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>
grazie mille. Funziona .. – Piyush
Grande, potresti per favore segnare come risposta. –
funziona bene ty – themis