Domanda

Sto scrivendo un modello in XSLT con XPath 1.0 e la necessità di accedere al tag di ancoraggio dall'URL della pagina corrente. Ad esempio, l'URL:

http: //localhost/destinations/london.aspx#accommodation

Ho bisogno di essere in grado di ottenere #accommodation e assegnarlo a una variabile. Mi rendo conto che io sono un po 'limitato utilizzando XPath 1.0 -? Qualcuno ha avuto alcuna esperienza di fare questo

Grazie, Adam

È stato utile?

Soluzione

Perché questo è un problema di XPath a tutti? Un URL non è un documento XML, non si applica ergo XPath.

XSLT è completamente all'oscuro di qualsiasi stato, come posizione della pagina. Indovinando un po 'a quello che si sta cercando di fare, siete probabilmente meglio fuori ottenere #accomodation dalla manipolazione di stringhe o di un quadro nello strato che chiama il XSLT, passando il valore come un param.

OTOH forse questo è privo di senso e la vostra domanda ha solo bisogno di un chiarimento.

Altri suggerimenti

Come ha detto @Annakata, questo non è un problema XPath. Non sembra essere un problema di XSLT sia, anche se posso sbagliarmi. Se è legato alla XSLT all'analisi delle stringhe, allora quello che ti serve è qualcosa di simile questa domanda parla di.

Quello che probabilmente hanno bisogno invece è Javascript per ottenere l'URL corrente (document.location) e quindi eseguire il parsing della stringa Javascript su di esso.

Non c'è modo nella norma XSLT per accedere a URL di un documento: http://www.dpawson.co.uk/xsl/sect2/nono.html#d1974e804

Alcuni produttori potrebbero fornire queste informazioni tramite le proprietà personalizzate, ma poi si sarebbe dipende dal processore XSLT.

Se si è riusciti a ottenere l'URL nella XSLT in qualche modo, allora vi consiglio si dovrà ricorrere alla semplice manipolazione delle stringhe per ottenere l'ancora.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top