未知变量的客户端模板

问题描述:

我们公司有一个由多个电子邮件模板组成的内部网,这些模板由变量填充(如[[NAME]],[[PROJECT]]等)。我正在考虑实施某种客户端模板,以便更容易地用实际值替换这些变量。未知变量的客户端模板

问题是,在我到目前为止找到的所有客户端模板解决方案中,它们都似乎假定JS代码知道标记中存在的所有模板变量,并且它们中没有一个似乎是能够获取标记中定义的变量列表。

有谁知道任何解决方案/插件,使这成为可能?

在此先感谢!

你就不能使用一些简单的正则表达式?

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

我建立了一个demo here,所以你可以看到它的行动。

+0

这看起来不错!我会给它一个旋风。 – 2010-04-29 07:44:00

+0

工作就像一个魅力!对于那些热心的人,我已经修改了这个例子来完成我所需要的:http://jsfiddle.net/KMVRJ/5/ – 2010-04-29 08:29:16

如果一组模板已经在客户端上缓存,并且客户可以随时使用,并且每个模板都将拥有自己的一组信息(硬编码或运行时定义)。然后我们可以去一些通用的解决方案

伪代码

- 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/