Javascript jsrender中的和操作
在JS呈现模板中使用AND(&&)操作符会引发异常。但是OR(| |)操作员工作正常Javascript jsrender中的和操作,javascript,jquery,html,jsrender,Javascript,Jquery,Html,Jsrender,在JS呈现模板中使用AND(&&)操作符会引发异常。但是OR(| |)操作员工作正常 <svg width="100" height="100" style="margin-top:-50px"> {{if orderValue === 0 && orderValue1 === 1}} <circle cx="30" cy="30" r="20" fill="orange"></circle> {{else}} <circle cx="
<svg width="100" height="100" style="margin-top:-50px">
{{if orderValue === 0 && orderValue1 === 1}}
<circle cx="30" cy="30" r="20" fill="orange"></circle>
{{else}}
<circle cx="30" cy="30" r="20" fill="red"></circle>
{{/if}}
</svg>
{{如果orderValue==0&&orderValue1==1}}
{{else}
{{/if}
演示链接:
错误详细信息
请提供解决此问题的建议。您已经在
元素中声明了您的模板。那不是个好主意!您应该使用脚本元素
<script id="template" type="text/x-jsrender">...
。。。
看
模板标记不一定是有效的HTML,因此将其放入HTML
或类似文件中可能会导致浏览器对其进行修改。在您的例子中,浏览器正在转义&symbols:{if orderValue==0&;&;orderValue1==1}}
,因此它不再是有效的模板
此外,您正在使用的JsRender版本是第一个测试版。从那时起,已经有了许多修复和改进。最好使用最新版本,例如。(请参阅)您已经在
元素中声明了模板。那不是个好主意!您应该使用脚本元素
<script id="template" type="text/x-jsrender">...
。。。
看
模板标记不一定是有效的HTML,因此将其放入HTML
或类似文件中可能会导致浏览器对其进行修改。在您的例子中,浏览器正在转义&symbols:{if orderValue==0&;&;orderValue1==1}}
,因此它不再是有效的模板
此外,您正在使用的JsRender版本是第一个测试版。从那时起,已经有了许多修复和改进。最好使用最新版本,例如。(请参阅)我下面的答案对您有用吗?如果是这样,你能把它标记为“接受”吗?我下面的答案对你有用吗?如果是这样,你能把它标记为“接受”吗?你的贡献太棒了+1@BorisMoore如何防止这种逃逸呢?这是标准的浏览器行为。你不能阻止它,但你不需要。使用脚本元素。浏览器不会跳过脚本元素的内容。你的贡献太棒了+1@BorisMoore如何防止这种逃逸呢?这是标准的浏览器行为。你不能阻止它,但你不需要。使用脚本元素。浏览器不会转义脚本元素的内容。