0

主に、小枝ブロック内の jQuery 変数を読み取る必要がありますが、方法がわかりません。さまざまなアプローチを試みましたが、成功しませんでした

私がやろうとしていることの例として、このコードを取り上げてください。

$('table tbody tr').each(function(index) {
     {% set i = index %} <-- does NOT work
     $('#test_form_' + index + '_name').style.color = "blue"   <-- That works  
     $('#test_form_' + index + '_name option[value =' +
         {{ names[i].id is defined ? names[i].id : '' }}
         + ']').attr("selected","selected"); <-- Need of JQuery index variable?¿?
})

何か助けはありますか?

ありがとう

4

1 に答える 1

2

簡単に言えば、csgがケリー・クックの回答へのコメントで述べたように; それは不可能。

Twig テンプレートはサーバー上で実行される通常の PHP コードにコンパイルされますが、JavaScript は実行時に解釈および実行されます。

あなたの例のテーブルで何をしたいのか完全にはわかりませんか? しかし、Twigs の組み込みループ変数 (loop.index、loop.first、loop.last など) が非常に役立つことがわかりました。

(私にとって) トリッキーな部分は、JavaScript をページに統合するための適切な戦略を見つけることだと思います。私は次のアプローチを取りました。可能な限り Twig で実行し (出力、要素への CSS クラスの追加など)、ページを多かれ少なかれ「静的 HTML」と見なし、目的の機能を実現するために JavaScript から始めます (これには、 m 強制的に、Twig に戻って、ID やその他のものなどのいくつかの追加の属性を追加します)。

Twig を JS と直接統合したい場合は、JS スクリプトの大部分を外部ファイルに置くことでそれを実行できるかもしれませんが、その一部をインラインで宣言することもできます (Twig を使用して JS コードを構築することができます)。それ自体:-))

幸運を!マネウ

于 2011-08-16T06:09:10.340 に答える