繁体   English   中英

在jsRender中,如何访问要更新的元素?

[英]In jsRender, how can you access element you're updating?

我是第一次使用jsRender,但是在完整文档方面却找不到很多。

我正在使用此模板填充网格-

<script id="my-grid" type="text/x-jsrender">
    <div class="grid-item">
         <img class="grid-item-image" src="img.gif" />
         <div class="grid-item-description">{{clean:Name}}</div>
    </div>
</script>

我设置了一个转换器来清理以Name返回的数据-

$.views
    .converters({
        clean: function (x) {
            if (x) {
                x=x.replace(/<br \/>/gi, " - ");
            } else {
                x="";
            }
            return x;
        }
    });

转换器工作正常,但是我想做的实际上是在else删除此元素grid-item-description实例(当没有文本要显示时)。

如何找出我当前在jsRender中的哪个元素来删除该元素?

谢谢! -迈克

首先,您可以在此页面上找到示例: http : //borismoore.github.io/jsrender/demos/demos.html

您需要解决的示例示例是以下示例: http : //borismoore.github.io/jsrender/demos/step-by-step/04_if-else-tag.html

您需要做的是带有if标签的Surround元素:

<script id="my-grid" type="text/x-jsrender">
    {{if Name}}
    <div class="grid-item">
         <img class="grid-item-image" src="img.gif" />
        <div class="grid-item-description">{{clean:Name}}</div>
    </div>
    {{/if}}
</script>

您甚至不需要在函数中使用else条件。

可以在jsfiddle上找到这样的工作示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM