我遇到了一个奇怪的问题,我试图从jTemplates模板中调用一个函数,并给出错误"XYZ.getFriendlyName不是一个函数“。看起来我肯定忽略了一些简单的东西,但我已经尝试了我能想到的所有方法,但错误仍然存在。代码如下所示:
<input type="text" value="{#if $T.RowId !== null}{XYZ.getFriendlyName($T.RowId)}{#/if}"/>我尝试删除函数中的所有内容以排除语法错误,重命名函数并将其移动到全局命名空间中,将函数本身移动到模板所在的页面中,放在模板代码之前。甚至把一切都放在一个三元运算符中,到目前为止,我还没有在jTemplates中工作过。我继续得到相同的错误。有谁知道解决这个问题的方法吗?
谢谢!Garann
发布于 2010-03-10 00:57:43
如果有人对此感到好奇,这是一个时机和背景问题。在完全读取同一页面上的JS文件之前,正在处理jTemplate。将函数移动到开始处理top/first模板的对象中解决了这个问题。
发布于 2012-01-29 13:06:46
函数不要使用撇号:请先定义函数:
function getFriendlyName( param ){
}将函数添加到param:
$('template-name').setParam('getFriendlyName', getFriendlyName);使用类似$P.getFriendlyName()的$P访问模板内的函数
对于ex。{$P.getFriendlyName($T.id)}
发布于 2010-10-20 18:38:31
函数参数(GetFriendlyName){}
通过像$P.getFriendlyName()一样使用$P在模板中使用$('template-name').setParam('getFriendlyName','getFriendlyName');
https://stackoverflow.com/questions/2319941
复制相似问题