- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 handelBarsJS 将 JSON 转换为 XML 。
我正在处理这个示例:我有一个“输出”列表:
"output":[
{
"name":"Name1",
"URI":"Link1",
"Ref":"ref1"
}, {
"name":"Name2",
"URI":"Link2",
"Ref":"ref2"
}, {
"name":"Name3",
"URI":"Link3"
}, {
"name":"Name4",
"URI":"Link4"
}
],
我有这个 XML 模板
<!-- output -->
{{#output}} {{^Ref}}
<outputs>
<OutputList>
{{/Ref}} {{/output}}
{{#output}}{{^Ref}}
<output name="{{name}}" xlink:href="{{URI}}" />
{{/Ref}} {{/output}}
{{#output}} {{^Ref}}
</OutputList>
</outputs>
{{{/Ref}} {{/output}}
我想要做的是仅检索不具有属性“Ref”的输出元素,我想要的输出 XML 格式的示例:
<!-- output -->
<outputs>
<OutputList>
<output name="Name3" xlink:href="Link3" />
<output name="Name4" xlink:href="Link4" />
</OutputList>
</outputs>
如果只有带有属性 Ref 的输出元素,我需要在 XML 文件中显示任何内容,因为我需要根据 XSD 架构对其进行验证。
当 Handelbars 对每个输出元素进行迭代并发现有一个具有 ref 属性的输出元素时,我需要添加此属性一次,就像在之后中断/退出循环一样:
<outputs><OutputList>
</OutputList> </outputs>
最佳答案
您的模板看起来相当复杂,您只需要一个 each
循环和 unless
帮助程序。
模板:
<script id="template" type="text/x-handlebars-template">
<outputs>
<OutputList>
{{#each output}}
{{#unless Ref}}
<output name="{{name}}" xlink:href="{{URI}}" />
{{/unless}}
{{/each}}
</OutputList>
</outputs>
</script>
JavaScript:
var json = {
"output":[
{
"name":"Name1",
"URI":"Link1",
"Ref":"ref1"
}, {
"name":"Name2",
"URI":"Link2",
"Ref":"ref2"
}, {
"name":"Name3",
"URI":"Link3"
}, {
"name":"Name4",
"URI":"Link4"
}
]
};
var source = $("#template").html();
var template = Handlebars.compile(source);
var xml = template(json);
输出(var xml
):
<outputs>
<OutputList>
<output name="Name3" xlink:href="Link3" />
<output name="Name4" xlink:href="Link4" />
</OutputList>
</outputs>
fiddle (参见控制台):http://jsfiddle.net/zba1g0dv/5/
关于javascript - HandlebarsJS 中断循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30078846/
我正在使用 handelBarsJS 将 JSON 转换为 XML 。 我正在处理这个示例:我有一个“输出”列表: "output":[ { "name":"Name1",
在 Handlebars 中是否可以在不注册帮助程序的情况下检查字符串是否等于另一个值?我似乎无法在 Handlebars 引用中找到与此相关的任何内容。 例如: {{#if sampleString
我想获取我的 JSON 文件的最后一项。所以我看了一下Getting the last element from a JSON array in a Handlebars template并试图实现它
我必须拆分一个字符串,该字符串以 JSON 形式提供。 我有以下 JSON 输出: "title" : "Rihanna - Pon de replay" 我需要像这样显示它 PON DE REPLA
我正在创建我的第一个 emberjs 项目,我正在使用 handlebarsjs 作为模板引擎,我正在使用这种格式的 ajax 调用从服务器获取数据: {"data":[{"ownerName":"d
我是第一次玩 HandlebarsJS,我希望在其中使用多个数组。这可能吗? 我已经设置了一个 Codepen 模板,但我正在努力实现来自 2 个数组和外部 URL 的数据。我也用 MustacheJ
我想创建一个助手,可以在其中比较两个日期,并根据某个日期是否已经过去来显示特定的 HTMl 元素。我有一些从远程 JSON 接收的数据,其中包含“日期”字段。例如: data: { date:
是否有任何方法可以为 Handlebars 转义设置某种设置,以便省略特定标签?或者是否有任何一组助手可以做到这一点? 例如如果我允许模板中的链接,它将执行以下操作。 InputSting = "so
我在每个助手中嵌套了一个每个助手。我想从内部每个助手内部的外部每个助手访问一个变量。代码如下 {{#each this=outer}} {{each this.values}}
我正在寻找一种解决方案,如何使用 Handlebarsjs 编译 HTML 模板而不忽略未填充的数据。 例如: var Handlebars = require("handlebars"); var
我有一个 Backbone 应用程序,我想在其中将“主页”链接显示为图标。我正在使用 HandlebarsJS,所以我真的不知道如何实现这一目标。 我想用这个: 然后在我的 CSS 中我会这样做:
我正在迁移我的一个项目以使用 HandlebarsJS 模板而不是下划线模板,我遇到了一个非常奇怪的问题。 我正在使用预编译模板,并且在我将呈现的模板附加到 DOM 的任何地方我都附加了一个空文本元素
我想知道是否有什么东西可以让 php 在服务器端呈现 Handlebarsjs 模板。 谢谢 最佳答案 我开始一个新项目来完成这个任务,它在这里: https://github.com/XaminPr
我有这样的 json: "elements":[ { "type":"AAAA", "val":{"detail":"111"}}, "type":"BBBB", "val":{"detail":"2
经过大量努力,我已经实现了 handlebarsjs到一个测试站点,该站点在用户输入时显示用户数据。 为了以不同的模板样式显示用户输入,我不得不重复相同的handlebarsjs以相同的形式多次编码。
我正尝试在 C#.net 类文件中呈现 CSS 和我的 HTML,如下所示,但样式未呈现。其他一切工作正常。我该如何链接样式表? string source = @"
大家好,我是 Handlebarsjs 的新手。 我有一个包含姓名、电子邮件、电话等的联系人集合,如下所示 [ { "name": "Bob Wolmer", "email": "
我有一些触发模式的标签。模式是页面上包含的一部分。我想根据 更改模式内的文本被点击了。当 时,我不知道如何将变量传递给部分。被点击。有什么想法吗? link 1 link 2
我的 channel.json 有 7 个信息对象,它们在 hb 中迭代,我想在它们之间插入一个日期。换句话说,我如何在第 3 次迭代之后,在使用 Handlebars 的循环之间推送 html 标记
在HandlebarsJS您可以使用 "with" block 将范围更改为当前范围的子属性.我怎样才能做到这一点 AngularJS ? 最佳答案 { title: "My first post
我是一名优秀的程序员,十分优秀!