возможно ли иметь цикл for в JSRender с инкрементной переменной i?

У меня есть шаблон (html-файл), который получает рендеринг с данными JSON с использованием JSRender.

Мой образец шаблона выглядит следующим образом

<ul id="membersList">
  {{for UserConnection}}
        <li>
        <div>
            <a title="{{:Fullname}}">
            <br />
            <img src="sample.png"/><br />
            {{:Fullname}}</a>
        </div>
        </li>
    {{/for}}

My Json data is

[
{
    "ApplicationName": "appone", 
    "Title": "Title one", 
    " UserConnection ": [
        {
            "Id": 210, 
            " email ": " [email protected] ", 
        }, 
        {
            "Id": 0, 
            " email ": " ", 
        },
        {
            "Id": 211, 
            " email ": " [email protected] ", 
        }
    ]
}

];

Теперь мое требование состоит в том, что я должен скрывать div, если, в частности, второй элемент JSON имеет значение id равное 0.

Возможно ли в JSRender проверить что-то, что мы делаем в С#, например

for (i = 0 ; i < 10 ; i++)
{
  if (userConnection[i] = 0)
      // show the div
  else 
     // dont show

}

т. е. если я могу получить доступ к UserConnection[i] даже в JSRender, то я могу показать или скрыть div. Является ли это возможным?


person ismail baig    schedule 08.02.2013    source источник


Ответы (1)


Вы можете посмотреть этот пример, чтобы увидеть, как получить родительские данные http://borismoore.github.com/jsrender/demos/step-by-step/11_accessing-parent-data.html

и есть #index в цикле for, чтобы получить доступ к текущему индексу.

Я думаю, что на самом деле ответ на ваш вопрос заключается в использовании помощника для создания div с включенным или выключенным отображением во время его создания.

Помощник, конвертер и пользовательские теги — это общие функции JavaScript, которые вы регистрируете, а затем используете.

person pedz    schedule 08.02.2013
comment
{{:#index+1}} мне помогло. :) - person ismail baig; 11.02.2013