[HTML,JS] Problème de \n dans une textarea

Problème de \n dans une textarea [HTML,JS] - HTML/CSS - Programmation

Marsh Posté le 12-07-2002 à 14:25:42    

voila un bout de code qui me permet de générer une instruction javascript :

Code :
  1. var instr = "parent.frame.document.nomform." + var1 + ".value=\"" + fonction(var2,var3,var4) + "\";";


que j'éxecute ensuite avec eval(instr).
 
Jusque là, tout va bien... :)
 
Mais en fait, ya un souci quand ma fonction "fonction" retourne une string qui contient des \n, ca ne marche plus (la fonction est utilisée indépendamment pour remplir soit des textarea, soit des input "text" ). L'erreur est l'erreur classique "constante chaine non terminée".
Par contre, pour toutes les valeurs de retour qui n'ont pas de \n, ca marche bien.
 
Je précise que je dois garder absolument mes retours-chariots à l'endroit ou ils sont.
 
Que faire ? Je ne vois pas  :sweat:  
merci d'avance pour votre aide


Message édité par seb91 le 12-07-2002 à 14:34:20
Reply

Marsh Posté le 12-07-2002 à 14:25:42   

Reply

Marsh Posté le 12-07-2002 à 14:35:39    

parent.frame.document.getElementById(var1).value = fonction(var2,var3,var4)

Reply

Marsh Posté le 12-07-2002 à 14:38:01    

youdontcare a écrit a écrit :

parent.frame.document.getElementById(var1).value = fonction(var2,var3,var4)




hier, g essayé avec le getElementById (comme tu me l'avais d'ailleurs recommandé :D ), mais ca n'avait pas marché, alors comme titi_4js m'a conseillé de son côté eval, g t parti sur eval.
Je vais réessayer...

Reply

Marsh Posté le 12-07-2002 à 14:41:09    

dans les inputs de ton formulaire, tu dois mettre le nom dans id et name.
 
<input type='text' id='myInput' name='myInput' value='...'>
 
... le code js ...
 
pour passer avec eval, tu mets le résultat de fonction() dans une variable :
 
eval("res = fonction(); parent.frame.document.nomform." + var1 + " = res;" )

Reply

Marsh Posté le 12-07-2002 à 14:43:35    

ah ok, ca doit etre alors mon problème... (le Id dans les input et dans les textarea)
Je réessaie en mettant les Ids alors. Ca devrait mieux marcher :)
 
Merci

Reply

Marsh Posté le 12-07-2002 à 14:47:29    

je comprends pas , g tjs le souci...
la meme erreur : "cette objet ne gère pas cette propriété ou cette méthode"

Reply

Marsh Posté le 12-07-2002 à 14:55:14    

url ?

Reply

Marsh Posté le 12-07-2002 à 14:56:20    

intranet  :(

Reply

Marsh Posté le 12-07-2002 à 15:00:52    

l'eval avec res ne marche pas ? peut-être avec un var ...
 
eval("var res = fonction(); parent.frame.document.nomform." + var1 + " = res;" )  
 
ou deux eval() de suite :
 
var res = '';
 
eval("res = fonction();" );
eval("parent.frame.document.nomform." + var1 + " = res;" )

Reply

Marsh Posté le 12-07-2002 à 15:03:09    

le eval marche très bien comme je le disais plus haut, mais seulement lorsque la string "res" ne contient pas de \n
Quand il y a un \n dans "res", il me dit que ya un souci de chaine de caractère non terminée

Reply

Marsh Posté le 12-07-2002 à 15:03:09   

Reply

Marsh Posté le 12-07-2002 à 15:12:25    

:D
 
hmmm ... ça viendrait pas de ta fonction() ?
 
function f()
{
  return "hello\nboys\nn\ngirls";
}
 
document.getElementById('myInput';).value = f();
 
marche impec chez moi ... ça vient donc sûrement de la façon dont fonction() construit ce qu'elle retourne.

Reply

Marsh Posté le 12-07-2002 à 15:16:37    

bah oui, j'y ai bien pensé, mais comment on expliquerait que ca marche pour certaines string et pas d'autres;
ce que je veux dire, c'est que insérer un \n entre deux " n'a pas d'influence sur la string normalement...  
 
bon, bah, je vais remettre les mains dans le camboui, et dans cette fonction...  :(  
si ca marche chez toi, ca doit marcher chez moi, non mais  :D  
 
Merci

Reply

Marsh Posté le 12-07-2002 à 15:21:31    

:fou:   :fou:   :fou:  
j'en ai marre... Quand je remplace ma fonction() par la petite toute simple que tu m'as donné, ca marche pas non plus. :pt1cable:  
Ce que je vais faire, je vais arreter la, laisser reposer tout ca pendant le week-end, et m'y remettre lundi :D
 
ca marchera surement mieux  :lol:
Encore merci à toi Youdontcare...


Message édité par seb91 le 12-07-2002 à 15:26:10
Reply

Sujets relatifs:

Leave a Replay

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