2016-08-25 6 views

答えて

1

...だから次の配列...

$vars = array(
    'iVal' => '99', 
    'iVal' => "'string'", 
); 

は、次のJavaScriptを変えるだろう...

if($vars) foreach($vars as $k => $v) { 
    $search[] = '$' . $k; 
    $replace[] = str_replace("\\'","'", Convert::raw2js($v)); 
} 

$script = str_replace($search, $replace, $script); 

を示し情報についてapi docs

var iVal = $iVal; 
var sVal = $sVal; 
を見てください。

〜...

var iVal = 99; 
var sVal = 'string'; 
+0

甘い私はあなたがこれを行うことができるか分からなかった。また、テキストベースのファイルで複雑な作業を行う必要がある場合は、Silverstripeテンプレートエンジンを使用して任意の文字列(jsまたはcssファイル全体を含むものなど)を実行し、ディスクに保存し直したり、カスタムcssまたはjs。 – AlphaCactus

+0

@ barry:それは動作しますが、私が期待した通りではありません。このコードは、インラインのjavascriptファイルをhtmlに変換します。変数を直接jsファイルで変更する別の方法はありますか? htmlのインラインコードなし – StefGuev

+1

@NewbieSSProgrammerええ、このようなカスタムスクリプトを使用することもできます... require :: customScript( "var myVar ="。$ iMyVar "; alert(myVar);"); – Barry

関連する問題