2010-04-28 2 views
1

Notre société dispose d'un intranet composé de plusieurs modèles de courrier électronique remplis de variables (telles que [[NAME]], [[PROJECT]], etc.). Je pensais mettre en place une sorte de modélisation côté client pour faciliter le remplacement de ces variables par des valeurs réelles. Le problème est que parmi toutes les solutions de gabarit côté client que j'ai trouvées jusqu'ici, toutes semblent supposer que le code JS connaît toutes les variables de gabarit qui existent dans le balisage, et aucune d'elles ne semble être capable de récupérer une liste de variables définies dans le balisage.Modélisation côté client avec variables inconnues

Est-ce que quelqu'un connaît des solutions/plug-in qui rendent cela possible?

Merci d'avance!

Répondre

1

Tu ne peux pas utiliser quelques-unes regex simple?

var variables = mycontent.match(/\[\[(.*?)\]\]/g); 

Je crée une demo here, afin que vous puissiez le voir en action.

+0

Ça a l'air génial! Je vais lui donner un tourbillon. –

+0

A travaillé comme un charme! Pour ceux qui sont intéressés, j'ai modifié l'exemple pour faire exactement ce dont j'avais besoin: http://jsfiddle.net/KMVRJ/5/ –

0

Si un ensemble de modèles est déjà mis en cache sur le client et disponible pour le client à la demande et que chaque modèle aura son propre ensemble d'informations à remplacer (codé en dur ou défini à l'exécution). Ensuite, nous pouvons aller chercher une solution générique

code Pseudo

- Decide which Template now need to render 
- Send a Ajax command of array of variables in to be replace in the template 
    [{var_name:"%project_name%",var_value:"Project" },{var_name:"%superviser%",var_value:"Its me :)" }] 


- Write a generic code that loop through json array and replace the var_name with the template source 
    Check this - http://api.prototypejs.org/language/template/