【问题标题】:Using functions of items in jQuery templates在 jQuery 模板中使用项目的功能
【发布时间】:2011-12-19 07:34:27
【问题描述】:

我正在使用淘汰赛 js 和 jQuery 模板。所以我想渲染一些带有名称和日期的模型。问题出在日期字段中。我已经编写了以我的语言自然形式打印日期的函数,并希望在模板中使用它。

我写了这个模板:

<script type="text/html" id="item-template">
    ${Name} (${Date().toRussianDateString()})
</script>

但收到错误Uncaught SyntaxError: Unexpected token )

所以我找到了这个解决方案:

<script type="text/html" id="item-template">
    ${Name} (${$data.Date().toRussianDateString()})
</script>

使用 $data 和 $item 变量。是正确的解决方案吗?我可以在不使用 $date 和 $item 的情况下编写此模板吗?

谢谢。

【问题讨论】:

  • 该解决方案适合您吗?
  • 这个解决方案效果很好,但对我来说似乎是“不好的气味”

标签: javascript jquery knockout.js jquery-templates


【解决方案1】:

这有点脏,因为您将死在水中的 jquery.tmpl 引擎与本机 KO 模板混合在一起。

如果你能够使用最新版本的 KO,你可以这样写:

<div data-bind="foreach: items">
    $data.Name ($data.Date().toRussianDateString())
</div>

注意是内联的;您不需要任何单独的脚本块或命名模板。

【讨论】:

猜你喜欢
  • 2014-05-05
  • 2018-12-23
  • 2023-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-12
相关资源
最近更新 更多