0 votes

Création d'un texte dynamique pour un contrôle littéral

Lors de l'événement ListView1_ItemDataBound d'une vue en liste, je crée le texte littéral comme suit...

<span style=&quot;position:relative;&quot;>
style="position:relative">
<span id=&quot;term1&quot; class=&quot;popup&quot;>This id="term1" class="popup">This is the answer!</span>
<a href=&quot;javascript:void(0);&quot;onMouseover=&quot;ShowPop('term1');&quot; onMouseout=&quot;HidePop('term1');&quot;>Show href="javascript:void(0);"onMouseover="ShowPop('term1')" onMouseout="HidePop('term1')">Show me the answer</a></span>

Le problème est que le texte n'est pas rendu comme il le devrait. En passant la souris sur le contrôle littéral de l'url est

http://localhost:1391/"javascript:void(0);"onMouseover="ShowPop('term1');"

Que se passe-t-il donc ici ? Qu'est-ce qui m'échappe ?

UPDATE1 : Voici la source du navigateur

 <span style=&quot;position:relative;&quot;> <span id=&quot;term1&quot; class=&quot;popup&quot;>This is the answer!</span> <a href=&quot;javascript:void(0);&quot; onMouseover=&quot;ShowPop('term1');&quot; onMouseout=&quot;HidePop('term1');&quot;>Show me the answer</a></span>

MISE À JOUR2 : Voici le résultat obtenu à l'écran

This is the answer  Show me the answer

où...

Montrez-moi la réponse est l'hyperlien vers http://localhost:1391/"javascript:void(0);"

1voto

Oded Points 271275

Il manque un espace entre la fin de l'expression href et l'attribut onMouseOver attribut.

Mise à jour : (commentaire suivant)

Lorsque vous survolez un lien, certains navigateurs vous indiquent l'endroit où se trouve le href points d'attributs. Dans ce cas, il s'agirait de "javascript:void(0) ;". Certains ajoutent l'URL de l'hôte à cette prévisualisation, d'autres non.

Mise à jour 2 : (mise à jour suivante de la réponse)

Il semble que le framework encode en HTML les chaînes que vous utilisez. Assurez-vous d'avoir défini l'option Mode du contrôle littéral à LiteralMode.PassThrough .

Mise à jour 3 : (après quelques tests)

J'ai essayé localement d'utiliser une chaîne avec des guillemets et je n'ai pas eu de problème. Êtes-vous sûr que vous n'encodez pas le code HTML avant de définir la propriété text, ou que le texte n'arrive pas encodé ? Essayez de décoder HTML avant de définir la propriété text.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X