Execution automatique d'un script

Résolu
Utilisateur anonyme - 17 oct. 2006 à 19:03
 Utilisateur anonyme - 19 oct. 2006 à 16:01
Bonjour,

J'ai une page html ou je place des
qui sont transformer en "TextBox évolué" à l'exécution d'un script de la manière suivante :

La div :


,

<
div
id
="htmleditor"
class
="htmleditor"
style
="width: 720px;"></
div
>


Le script que je lance à la fin :


,

<
script
language
="javascript"
type
="text/javascript">

  SetHtmlEditor('htmleditor', 1);
</script>


Jusque là, ok, mais ... ce n'est pas très pratique.
Oui pas pratique car je vais mettre ces TextBoxs (il peut y en avoir plusieurs sur une page) sur des TabPages (autre contrôle que j'ai fait), ou il se sert de l'AJAX pour afficher les tabs. D'ou le problème que je rencontre.







Donc je voudrais savoir si on pourais faire en sort que le script s'execute à chaque création d'objet.
Un truc du genre:
<
divid="htmleditor"class="htmleditor"style="width: 720px;"oninit="SetHtmlEditor('htmleditor', 1);"></div>
Mais évidement, ca ne marche pas.

Ou alors faire un objet personalier, je sais pas si c'est possible, mais ca serait du genre
<htmleditorid="monhtmleditor"style="width: 720px;"></htmleditor>

Voila, si vous avez des idées,
Merci d'avance.


Kenji

4 réponses

PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
17 oct. 2006 à 20:01
 Bonjour...

Les
en question sont crées comment?

on peut dans le script récupérer tous les DIV avec document.body.getElementsByTagName('DIV') vérifier de la class htmleditor et si c'est le cas lancer la fonction...
//---------------

function Init_All(){
  var Obj = document.body.getElementsByTagName('DIV');
  for(var i=0; i < Obj.length; i++){
    if( Obj[i].className =="htmleditor")
      SetHtmlEditor( Obj[i].id, 1);
  }
}










par exemple...








;0)
3
Ordinastie Messages postés 93 Date d'inscription samedi 29 janvier 2005 Statut Membre Dernière intervention 17 octobre 2008 2
19 oct. 2006 à 15:00
Bonjour,

Si j'ai bien compris, ta requete AJAX récupere le contenu de la tab à afficher, et dans certains cas, ce contenu contient un ou plusieurs textbox que tu dois initialiser?
 
Si j'ai bien compris donc, la solution serait de passer les id des textbox à initialiser en retour de ta requete (pas trop compliquer si tu te sers de la réponse XML, sinon, si tu te sers de la réponse texte, tu n'as pas le choix, tu dois passer en XML) et lancer les initialisations pour chaque id récupéré une fois que ta tab est mise à jour.

En réfléchissant, je me dis que le problème viendrait plutot dans la façon dont t'as implémenter ta requète AJAX. Si tu vois pas trop ce que je veux dire, je pourrais te mettre les fonctions que j'utilise.

@+ Ordinastie
3
Utilisateur anonyme
18 oct. 2006 à 16:09
Oui ca c'est un idée mais le div sont justement crée en utilisant l'AJAX. (au changeant de Tab)
Donc il faudrait que je mette le script "Init_All" à chaque changement de Tab. Mais comme je me sert de mon TabPage pour d'autres application, ca va me rajouter des testes inutiles si aucun tab ne contient de "TextBox évolué" et je devrai aussi mettre la référence à mes script de "TextBox évolué" dans les pages qui ne contiennent pas de "TextBox évolué" mais qui contienne un TabControl.
Il faut que le TabControl et les TextBoxEvoluees soient indépendant l'un de l'autre.

<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>







Kenji
0
Utilisateur anonyme
19 oct. 2006 à 16:01
Oui, j'ai un peu près saisis ce que tu me propose. Mais il vient que je dois mettre la fonction dans mon contrôle de tab. J'aurais préféré qu'ils soient indépendant l'un de l'autre (le tabcontrol et les textboxs).
Mais bon, je pense que je n'ai gère le choix. Donc je pars sur ce principe.
Cependant, si vous avez d’autres solutions, je prends toujours.

Merci pour tout votre aide que vous m'avez apporter.



Kenji
0
Rejoignez-nous