[XSL] question aux gourous! aide TEXTAREA aussi ;)

question aux gourous! aide TEXTAREA aussi ;) [XSL] - HTML/CSS - Programmation

Marsh Posté le 12-03-2003 à 16:13:13    

hello
je dois faire une template, qui remplace, dans une chaine donnee,
 
les " par des \"
 
(en fait je choppe des strings et je les mets dans des variables js, et c pour ca que je veux antislasher les eventuelles " ....
 
 
donc: j'ai ça!:
 


<xsl:template name="escape-javascript">
 <xsl:param name="string" />
 <xsl:choose>
 
  <xsl:when test='contains($string, "\"" )'>
   <xsl:call-template name="escape-javascript">
    <xsl:with-param name="string" select='substring-before($string, "\"" )' />
   </xsl:call-template>
   <xsl:text>\"</xsl:text>
   <xsl:call-template name="escape-javascript">
    <xsl:with-param name="string" select='substring-after($string, "\"" )' />
   </xsl:call-template>
  </xsl:when>
 
 
  <xsl:otherwise><xsl:value-of select="$string" /></xsl:otherwise>
 
 </xsl:choose>
 
</xsl:template>


 
mais ca me pete un message d'erreur car il comprend pas le \" a l'interieur meme de la xsl,
voila je sais pas comment m'en sortir et j'espere que vous pourrez me donner une coup de pouce !
 
merci ;)


Message édité par k666 le 12-03-2003 à 17:00:56

---------------
mangez du mozilla c le futur, c votre DESTIN ! http://www.mozilla.org/releases/
Reply

Marsh Posté le 12-03-2003 à 16:13:13   

Reply

Marsh Posté le 12-03-2003 à 16:26:53    

bon bin j'ai a peu pres trouve une soluce:
 


<xsl:template name="escape-javascript">
 <xsl:param name="string" />
 <xsl:choose>
 
  <xsl:when test='contains($string, "&q uot;" )'>
   <xsl:call-template name="escape-javascript">
    <xsl:with-param name="string" select='substring-before($string, "&q uot;" )' />
   </xsl:call-template>
   <xsl:text>\"</xsl:text>
   <xsl:call-template name="escape-javascript">
    <xsl:with-param name="string" select='substring-after($string, "&q uot;" )' />
   </xsl:call-template>
  </xsl:when>
 
 
  <xsl:otherwise><xsl:value-of select="$string" /></xsl:otherwise>
 
 </xsl:choose>
 
</xsl:template>


 
 
mais bon le probleme c que je montre, par exemple ma XSL dans une textearea HTML, et cette conne de textarea elle me transforme le " en " et donc ca fout la merde paske en faisant un copier coller dans la meme fenetre il se chie dessus cette espece de grosse merde de sa mere


Message édité par k666 le 12-03-2003 à 17:01:49

---------------
mangez du mozilla c le futur, c votre DESTIN ! http://www.mozilla.org/releases/
Reply

Marsh Posté le 12-03-2003 à 17:00:09    

hum daisolai :p
 
ya til une facon de faire qu'une textarea se comporte vraiment come une textarea et n'essaye pas du tout d'interpréter des trucs comme & quot ; en mettant un " à la place et autres charmantes stupidités ?


---------------
mangez du mozilla c le futur, c votre DESTIN ! http://www.mozilla.org/releases/
Reply

Marsh Posté le 12-03-2003 à 17:13:04    

Faut faire une section CDATA, là tu peux écrire ce que tu veux, tant que le parseur n'a pas trouvé la balise de fin, il n'interprète rien

Reply

Marsh Posté le 12-03-2003 à 17:24:53    

oausi mais au niveau de la textarea, imagine ce cas la:
 
 
tu rentres ca:
 


<textarea>
  voila je dis que ca va & quot; peter & quot;
</textarea>


 
(sans les espaces pour le quot hein, c pour que hfr modifie pas)
 
 
si on veut mettre a jour le contenu de la textarea il va afficher ca:
 
[fixed]
  voila je dis que ca va " peter "
[fixed]
 
et donc quand on submite apres mise a jour par exemple du mot peter, bin ca fout en l'air le & quot; et donc ca pue :(
 
je cherche un moyen pour que la textarea, quand elle affiche le code qu'on lui dit, ne foute pas sa merde
 


---------------
mangez du mozilla c le futur, c votre DESTIN ! http://www.mozilla.org/releases/
Reply

Marsh Posté le 12-03-2003 à 20:34:29    

C'est pas le textarea qui fout sa merde. Crée une page HTML, tu vas voir que tu peux écrire du code HTML, il ne va pas l'interprérer, et encore moins les & quote; et cnie.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed