Использование условия If внутри шаблона - PullRequest
2 голосов
/ 24 февраля 2011

Как вы используете оператор IF внутри шаблона jQuery?

Вот мой шаблон:

<script type="text/html" id="attachmentListTemplate">
{{if $item.current_cmt_id == id }}
    <li>
        <a href="${link}" class="fancyIFrame clearfix">${title}</a>
    </li>
{{/if}}
</script>

Где id по существу ${id} и передается привязкой данных (через KnockoutJS). Который без оператора IF выводит нормально, например так: ${$item.current_cmt_id}

Вот привязка данных (работает на KnockoutJS):

<ul data-bind='template: { name: "attachmentListTemplate", foreach: attachmentsModel.convAttachments, templateOptions: {current_cmt_id: <%=comment.id%>} }'> </ul>

Какие-либо предложения относительно того, почему заявление if не работает? Я правильно сравниваю два условия?

Ответы [ 2 ]

6 голосов
/ 24 февраля 2011

Предполагая, что id является наблюдаемой, вы должны вызывать ее как функцию, а не рассматривать как свойство. Попробуйте следующее:

{{if $item.current_cmt_id == id()}}
0 голосов
/ 24 февраля 2011

Вам нужно окружить <% = comment.id%> кавычками?

        <ul data-bind='template: { name: "attachmentListTemplate", foreach: attachmentsModel.convAttachments, templateOptions: {current_cmt_id: "<%=comment.id%>"} }'> </ul>
...