jQuery 模板表达式约束

发布于 2024-11-28 19:55:08 字数 401 浏览 1 评论 0原文

我有:

<script id="foo" type="text/x-jquery-tmpl">
  <p>${100 * parseInt(x)}</p>
</script>

当我这样做时:

$('#foo').tmpl({'x':5}) // or '5'

我得到一个 TypeError (未定义的方法)。

但是如果我删除 parseInt 或者将 100 移到 parseInt 之后,一切都会正常!

我一直在搜索,我发现的所有内容都表明 ${} 应该能够处理任意表达式,但这里似乎存在一些语法魔法/不容忍。

有什么解释吗?

I have:

<script id="foo" type="text/x-jquery-tmpl">
  <p>${100 * parseInt(x)}</p>
</script>

When I do:

$('#foo').tmpl({'x':5}) // or '5'

I get a TypeError (undefined method).

But if I remove the parseInt or if I move the 100 to come after the parseInt, everything works!

I've been searching and everything I find says that ${} should be able to handle arbitrary expressions, but there seems to be some syntax magic/intolerance going on here.

Any explanations?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

蹲在坟头点根烟 2024-12-05 19:55:08

你需要这样做:

 <p>100 * parseInt(${x})</p>

You need to do like this:

 <p>100 * parseInt(${x})</p>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文