3

私は非常に長い JavaScript を持っており、その中で YII CHtml 関数を使用する必要がありますが、引用符文字列がコードを非常に面倒にしています。

例えば、

$script = "$('#car_brand').click(function(e), {
   //codes
   var car_name = /"bmw/";
});";
<?php Yii::app()->clientScript->registerScript('car-js', $script); ?>

上記の問題は、短いバージョンの例を示しているだけです。CakePHP の scriptBlock 関数に相当するものはありますか?

http://book.cakephp.org/1.3/view/1604/scriptBlock

ありがとう

4

2 に答える 2

17

$ script = <<< EOD

/* here you write your javascript normally in multiple lines */

EOD;

Yii :: app()-> clientScript-> registerScript('someId'、$ script);

このように書くことができます。

于 2012-11-17T09:30:40.713 に答える
0

これは必ずしも正しい方法ではありませんが、引用符を含む Yii スクリプト全体が私を夢中にさせるので、私はいつもそうしています。

私のレイアウトでは、次のように jQuery (および通常は jQueryUI を使用する場合) をロードします。

<?php cs()->registerCoreScript('jquery'); ?>
<?php cs()->registerCoreScript('jquery.ui'); ?>

次に、Yii を使用していない場合と同様に、通常のスクリプト タグで script を使用します。「通常の」方法で単に jQuery にリンクするのではなく、registerCoreScript で jQuery をロードすることにより、CGridView のようなもののために Yii が使用するスクリプトの問題を防ぎます。

私が言ったように、最も正しい方法ではありませんが、私はjavascriptをたくさん使用しているので、それが私にとって最良の解決策であることがわかりました

于 2012-11-17T11:02:25.210 に答える