0

次のように、テンプレートを使用してページを呼び出すページに要素を追加する関数があります。

 var plantillaTemplate = '<div class="contenedor-oferta"><a class="link" href="${enlace}" target="_blank"><!-- Linia superior --><div class="titol">${titulo}</div><!-- Columna esquerra --><div class="left"><div class="foto"> <img class="imatge-oferta" src="${enlaceFoto}"> </div><div class="enlace"><span>Precio alojamiento desde</span><br><span id="test">${precio} $ </span></div></div><!-- Columna dreta --><div class="right"><span>${textoOferta}</span></div></a> </div>';      

    for (var i = 0; i < num_productos; i++) {
        var dataActual = data[i];               
        var valores = { "enlace"        : dataActual['enlace'][idioma],
                        "titulo"        : dataActual['titulo'][idioma],
                        "enlaceFoto"    : dataActual['imagen'][idioma],
                        "precio"        : dataActual['camping'],
                        "textoOferta"   : dataActual['descripcion'][idioma]};           

        var test = $.tmpl(plantillaTemplate, valores).appendTo("#divOfertas");  
    }

追加された要素セクションのどれが表示され、どれが表示されないかを示す関数パラメーターがあります。したがって、私がやりたいのは、jQueryで行うのと同じように、テスト変数の要素にアクセスして無効にすることです。

これを行う方法はありますか?

PD:追加後にこれができることは知っていますが、前にやりたいと思います。

4

1 に答える 1

0

呼び出し後$.tmpl、結果の jQuery オブジェクトは、DOM にまだ追加されていない場合でも、要素を無効にするために必要な通常の jQuery メソッドをすべてサポートできるはずです。例えば:

var test = $.tmpl(plantillaTemplate, valores).find('.test').prop('disabled', true).end().appendTo("#divOfertas");

メソッドを使用し.find()て、通常のセレクター文字列を渡すことにより、特定の要素セットに焦点を当てます。OPは「無効化」要素について言及しているので、その.prop('disabled', true)方法はあなたが探しているものだと思います。最後に、この.end()メソッドは、.find().

于 2013-03-18T17:44:43.463 に答える