2011-05-20 17 views
5

Parece que no puedo obtener la variable principal de la plantilla secundaria, ¿alguien sabe cómo?plantillas de jquery, accediendo a la variable primaria desde la plantilla secundaria

código actual:

<li class="ui-parent-field" > 
      <b>${ Name }</b> 
      {{if Options ===null}} 
      | <span data-field-name="${ Name }" data-field-type="${ Type }"></span> 
      {{/if}} 
      <br/> 
      ${ Description } 
      {{if Options !==null}} 
      <div style="clear:both;"> 
      <ul class="ui-child-list"> 
       {{each Options}} 
        <li class="ui-child-field"> 
         ${ Name } : ${ Value } | 
        <span data-field-type="${ Type }" data-field-name="${ Name }"></span> 
//NOTE should be: 
<span data-field-type="${ Parent.Type }" data-field-name="${ Parent.Name }"></span>     </li> 
       {{/each}} 
      </ul> 
      </div> 
      {{/if}}   
     </li> 

Este es un ejemplo muy crudo, pero básicamente estoy tirando a cabo algo de información en la vista el uso de plantillas jQuery, tengo un artículo lapso de matriz que contiene Nombre + Tipo, entonces estoy arrojando los elementos secundarios de este objeto si existen, quiero acceder a la propiedad Tipo desde el padre dentro de cada ciclo.

Respuesta

8

Puede acceder al objeto al que está ligada toda la plantilla usando $ data. Por lo tanto, se usaría algo como:

<span data-field-type="${ $data.Type }" data-field-name="${ $data.Name }"></span> 
+0

gracias, por alguna razón no pude encontrar esto en la documentación de jQuery o no fue tan claro para mí, ¿tiene alguna referencia? – Haroon

+0

No es mucho, pero puede ir aquí: http://api.jquery.com/template-tag-equal/ y buscar el encabezado 'The $ item and $ data Template Variables' –

Cuestiones relacionadas