Jquery tmplate 巧用
Jquery有个template插件,提供将html标签转为模板的功能,但是这个模板一定又得是个完整的html元素。它是设计为最终使用appendTo等方法添加到DOM中去得。
那么我要是想使用它作为纯粹的字符串模板,那就没法了?找了半天,就是不提供这个功能。
这里介绍怎样利用它来实现字符串模板:
将字符串模板放在textarea元素中,使用text()方法来获得展示好后的字符串。
function tpml(tpl, context) { // we can not use the same textarea, must remove it and use text() on it // one time ids.tpl_text.innerHTML = '<textarea id="txt_tmpl">' + +'</textarea>'; return $('#txt_tmpl').text(ajax_tpls[tpl]).tmpl(context).text(); }
注意,每次必须重新创建一个textarea来包含文本,因为我发现第二次对textarea使用text()不起作用。
但是我有点烦的就是这个基本功能怎么它就没提供呢。