jsRender - Como chamar um template externo de um template aninhado

Eu sou realmente novo para jsRender (apenas um par de dias) e eu só posso dizer .. eu adoro isso!

Um artigo que achei muito útil foieste de john papa

Até agora eu pude fazer o que eu quero (tudo na mesma página), mas uma coisa que John diz em seu artigo:

Se um modelo for definido dentro de uma tag na mesma página em que é usado, o modelo não será tão reutilizável quanto possível.

me fez querer tentar e ver se poderia mover todos os meus modelos em arquivos separados.

Seguindo as instruções de John, criei umjsrender.utils.js arquivo que recupera o modelo usando o$.get função.

AgoraO problema é que ele funciona apenas para modelos que não chamam outros modelos de dentro, como meu modelo:

_estructura.tmpl.html

    <tr>
    <td>
        {{!------------------------------Start - Estructure------------------------}}
        <fieldset id="e{{>nivelEst}}">
            <legend>"Estructura para Retorno {{>nivelEst}}"</legend>
            <div>
                <span>Tipo Expresion</span>
                <select id="tipoExp_e{{>nivelEst}}">
                    {{for tipoExp tmpl="#dropdown" /}}
                </select>
            </div>
            <hr />
            {{!-------------------------Start- Sentence-----------------------}}
            <fieldset id="{{>idSent}}">
                <div>
                    <select id="subTipoExp_{{>idSent}}">
                        {{for subTipoExp tmpl="#dropdown" /}}
                    </select>
                </div>
                <br />
                <div>
                    {{!-----------------Start - Expression--------------------}}
                    <table id="tbExp_{{>idSent}}" class="list" align="center" cellpadding="0" cellspacing="0">
                        <tbody>
                            {{if idSent tmpl="#if" /}}
                        </tbody>
                        <tfoot>
                            {{if idSent tmpl="#else" /}}
                        </tfoot>
                    </table>
                    {{!----------------------End - Expression----------------}}
                </div>
            </fieldset>
            {{!-------------------------End - Sentence -------------------------}}
        </fieldset>
        {{!----------------------------End - Estructure  -------------------------}}
    </td>
</tr>

Aqui, preciso chamar outros modelos, como: #if, #else e #dropdown

Todos eles são muito simples e funcionam perfeitamente quando chamados diretamente

_dropdown.tmpl.html

<option value="{{>value}}">{{>text}}</option>

_if.tmpl.html

<tr>
    <td>
         <span class="rightAlig">IF(</span><input type="text" id="exp1_tbExp_{{>idSent}}" class="conditionInput" />
    </td>
    <td>
          :<input type="text" id="ret1_tbExp_{{>idSent}}" />)
    </td>
    <td>
    </td>
</tr>

_else.tmpl.html

<tr>
    <td colspan="3" style="text-align: left;">
        <input type="button" id="btnAñadir_tbExp_{{>idSent}}" value="+ Add" class="button small blue" />
    </td>
</tr>
<tr>
    <td colspan="3">
        <span>Else</span>(<input type="text" id="else_tbExp_{{>idSent}}" />)
        <input type="hidden" id="c_tbExp_{{>idSent}}" value="1" />
    </td>
</tr>

Quando eu chamo o modelo "_estructura.tmpl.html" que, por sua vez, chama odropdown, ifeelse modelos apenas doenst fazer a lógica dentro desses modelos (eu acho que não pode encontrá-los)

aqui está como eu chamo o modelo "_estructura.tmpl.html":

var data_Est = new Object();
data_Est.nivelEst = counter;
data_Est.idSent = idSent;
data_Est.tipoExp = tipoEsp_data;
data_Est.subTipoExp = subTipoEsp_data;
my.utils.renderExternalTemplate("estructura", "#tbEstructuras >tbody", data_Est);

e aqui estão os dados das duas listas suspensas do modelo principal: "tipoEsp_data" e "subTipoEsp_data"

var tipoEsp_data = [{ "value": 1, "text": "Expresión Condicional" }, { "value": 2, "text": "Lógico/Matemática" }, { "value": 3, "text": "Matriz de doble Entrada" }, { "value": 4, "text": "Árbol de decisiones"}];
var subTipoEsp_data = [{ "value": 1, "text": "Si.Pero.Si" }, { "value": 2, "text": "Si" }, { "value": 3, "text": "Fórmula Matemática"}];

Como eu lhe disse no começo eu realmente novo para jsrender e seria incrível se você pudesse ajudar com este problema.

Desde já, obrigado.

questionAnswers(1)

yourAnswerToTheQuestion