我需要在 JSRender 模板中使用以下 if 语句:
if (UltimoStr != "0,00" && BudgetStr != "0,00" && ReseveretStr != "0,00")
{
<div class="Posts"></div>
}
但我无法弄清楚语法。
到目前为止我所拥有的是:
{{if UltimoStr != "0,00"}} and {{BudgetStr != "0,00"}} and {{ReseveretStr != "0,00"}}
<div class="Posts"></div>
{{/if}}
这是行不通的。
我一直在查看此站点的文档,但它似乎没有多个和运算符:
https://github.com/BorisMoore/jsrender/blob/master/demos/scenarios/02_separators-scenario.html
最佳答案
这应该有效:
{{if UltimoStr != "0,00" && BudgetStr != "0,00" && ReseveretStr != "0,00"}}
<div class="Posts"></div>
{{/if}}
或者,您可以使用计算该表达式结果的单个 bool 值来装饰要绑定(bind)的对象。
可以在此处找到在 JsRender 中工作的运算符列表:http://msdn.microsoft.com/en-us/magazine/hh975379.aspx(向下滚动到标题为“表达式”的部分)。
这是一个简单的测试:
HTML:
<body>
<h2>Result</h2>
<div id="expect-true"></div>
<div id="expect-false"></div>
</body>
<script id="template" type="text/x-jsrender">
{{:UltimoStr}}
{{:BudgetStr }}
{{:ReseveretStr }}
{{if UltimoStr != "0,00" && BudgetStr != "0,00" && ReseveretStr != "0,00"}}
<h1>True!</h1>
{{else}}
<h1>False!</h1>
{{/if}}
</script>
//JS:
$(document).ready(function() {
var trueData = {
UltimoStr: "1,00",
BudgetStr: "1,00",
ReseveretStr: "1,00"
};
$("#expect-true").append($("#template").render(trueData));
var falseData = {
UltimoStr: "0,00",
BudgetStr: "0,00",
ReseveretStr: "0,00"
};
$("#expect-false").append($("#template").render(falseData));
});
似乎按预期工作:http://jsfiddle.net/FJSkh/2/
关于javascript - 如何在 JSrender if 语句中创建 && 运算符?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16716368/