Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2424 connectés 

 


Dernière réponse
Sujet : [JAVASCRIPT] Passage de parametres
wouatouwouatou le toString()... ca marche pas ?? :??:

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
wouatouwouatou le toString()... ca marche pas ?? :??:
grahf oui myUser est un objet :
 
function user()
{
 this.p_login='';
 this.p_pass='';
 this.p_forname='';
 this.p_name='';
}
 
var myUser=new user();
 
la fonction f_create recupere mon objet, affiche ses champs dans un input, et au submit du formulaire, appelle la fonction f_conf (avec l'objet passe en parametre) pour recuperer la valeur des champs et les affecter a l'objet.
 
PS : dans mon poste precedent, le nom du parametre de la fonction f_create est mal choisi, c pas le titre
JWhy c'est quoi ton myUser... c'est document.form.myUser qui est un <input ...> ou est-ce une string style le nom de form ?!?
 
parei, tu veux passer quoi f_conf ? ton p_param c'est une chaine ? un objet ?
 
excuse moi d'insister mais c'est pas super clair ! (enfin, pour moi ;) )
grahf Bon je reformule mon probleme parce que g tjrs pas trouve :
 
 
 
function f_conf(p_param)
{
 alert(p_param);
}
 
function f_create(t_titre)
{
 document.write('<FORM NAME="titre1" onSubmit="f_conf('+...???...+')">');
 document.write('<INPUT TYPE=TEXT SIZE="10" NAME="champ1">');
 document.write('<INPUT TYPE=SUBMIT>');
 document.write('</FORM>');
}
 
f_create(myUser);

 
 
 
Je veux donc passer mon objet myUser a la fonction f_conf par l'intermediaire de mon formulaire.
Comment on peut faire :??:  
 
( +eval("t_titre" )+  marche pas)

 

[edtdd]--Message édité par grahf--[/edtdd]

wouatouwouatou ben... essaie de faire un trc du genre toString() a ton objet...
 
sinon si tu met eval() en chaine de caracteres... ca passe pas ?
JS ne connais pas eval ?
grahf non ce que je passe en parametre c des objets, pas des chaines de caracteres.
 
G essaye en mettant document.write('<FORM  NAME="dsd" OnSubmit="editer('+eval(object)+')">');  
mais il me sort une erreur
wouatouwouatou Je vois que ca cogite dur !!! :D
JWhy tu peux aussi faire :

Code :
  1. OnSubmit="editer(eval('document.' + title + '.' + object.name), title);"


y'a peut-etre des ' a transformer en \' pour que ca marche dans ton document.write()
 
- - -  
 
edit: en relisant, j'ai peut-etre merdé dans les " et les ' ... j'essaye de te faire un truc qui marche... mais en gros tu utilises le eval() pour que a la fin, tu aies dans ton HTML resultant du document.write:

Code :
  1. OnSubmit="editer(eval('document.NOM_DE_LA_FORME.NOM_DE_L_OBJET'), 'NOM_DE_LA_FORME');"


 
- - -  
 
Euhh.... :sweat:  en fait, je crois que je me fais chier pour rien... la variable object est une chaine pour toi... pas un object...  :(

 

[edtdd]--Message édité par JWhy--[/edtdd]

wouatouwouatou si tu n'utilise les parametres object et title que pour ca...
tu na ka considerer kil sont des chaines de caracteres...
et hop ton pb est reglé !!!!
au lieu de passer a ta fonction modify() des objets, ben tu les lui passe sous forme de chaine de caracteres...
 
du genre :  

Code :
  1. modify("document.la_form.l_objet","document.la_form.le_titre" )

grahf toujours un pb de JS : g une fonction (JS) qui cree un formulaire. Elle prend 2 parametres :
 
function modify(object, title)
{
 document.write('<FORM  NAME="'+title+'" OnSubmit="editer()">');
 document.write('<TABLE BORDER=0>');
 
        .... (remplissage du formulaire)
 
 document.write('<TR><TD><INPUT TYPE="SUBMIT" VALUE="Modify"></TD></TR>');
 document.write('</TABLE>');
 document.write('</FORM>');
}
 
moi au lieu d'ecrire : OnSubmit="editer()"; je voudrais ecrire un truc du style OnSubmit="editer(object,title)"; ou bien OnSubmit="editer("+object+","+title+" )";
 
(evidemment, une solution simple consiste a definir mes 2 objets objects et title en dehors des fonctions comme variables globales, mais c pas tres propre!!)

 

[edtdd]--Message édité par grahf--[/edtdd]


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)