是否可以在 jquery 模板中定义新变量?我阅读了官方的 jquery 模板文档,但在这方面找不到任何东西。我尝试了类似的东西,{{ var xxx=123 }}
但没有奏效。最后我通过做
${$item.xxx=123,""}
后来使用
$item.xxx
但我确信这不是最好的方法......
是否可以在 jquery 模板中定义新变量?我阅读了官方的 jquery 模板文档,但在这方面找不到任何东西。我尝试了类似的东西,{{ var xxx=123 }}
但没有奏效。最后我通过做
${$item.xxx=123,""}
后来使用
$item.xxx
但我确信这不是最好的方法......
我不认为使用 $item 方法太糟糕了。它与您在哪里查找通过 options 参数传递给 $.tmpl 的变量是一致的。
基于此处的一个小技巧,我使用的另一种方法是实际定义一个“var”模板标签。
做就是了:
$.extend($.tmpl.tag, {
"var": {
open: "var $1;"
}
});
然后你可以在你的模板中使用它,比如:
{{var xxx=123}}
...
<div>${xxx}</div>
此外,关于自定义 jquery 模板标签的精彩博客文章:http: //blog.sterkwebwerk.nl/2010/12/15/custom-jquery-template-tags-1/
您可以使用 eval 标记扩展 jquery 模板
$.extend($.tmpl.tag, { "eval": { open: "$1;"} });
并使用
{{eval var xxx = 123}}
{{eval xxx += 23}}
I do:
${xxx=13, ""}
and then i can use xxx in a sub or in the same template