Kendo multiselect изменяет TagTemplate в зависимости от количества выбранных элементов

Допустим, у меня есть множественный выбор, который отображает «A-Animation», «B-Brutal» и т. д., и т. д., и т. д. я использую функцию TagTemplate, чтобы установить текст, отображаемый, как указано выше.

Как сделать выделенный текст «A-Animation» для одиночного выбора и «A, B, C, D» для множественного выбора?


person Moru Jackall    schedule 14.02.2019    source источник


Ответы (1)


Мору, вам нужно встроить в свой шаблон некоторую условную логику. Этот пример делает что-то похожее, показывая значок и текст, когда есть менее трех вариантов выбора, прежде чем переключиться на отображение только набора значков. Надеюсь, это натолкнет вас на некоторые идеи :)

<script id="tag-template" type="text/x-kendo-template">
    # var fullTag = (values.length < 3); #
    # for (var idx = 0; idx < values.length; idx++) { #
        # var di = dataItems[idx]; #
        <span class="far fa-fw #:di.icon#" title="#:di.text#"></span>
        # if (fullTag) { #
            #:di.text#
            # if (idx < values.length - 1) {#, # } #
        # } #
    # } #
    # if (!fullTag) { #
        of #:maxTotal#
    # } #
</script>
person Joe Glover    schedule 15.02.2019