2016-06-21 4 views
0

いくつかのJS関数を使用していくつかの選択オプションを読み込もうとしています。前に定義したPHP変数と等しい場合、デフォルトで1つのオプションを選択したいと思います。Javascriptで表示されるPHP変数

私はエラーが表示さ:

Unexpected token

をし、私は構文と間違って何かをやっていると確信しています:

これは私のJS関数のセクションです:

for(var i = 0; i < categories.length; i++){ 
      select.options[i] = new Option(categories[i].val,categories[i].id); 
      if (select.options[i].text== <?php echo '$categoriesSelect'; ?>) 
      { 
       select.options[i].selected=true; 
      }  
     } 

変数$categoriesSelectはJSの前に定義されています。ありがとうございました!

+3

で引用符削除: – CD001

+1

はこれは '' "json_encode($ categoriesSelectを)" PHPで実行される.phpファイルで...? – deceze

+0

@ deceze:はい、それは.phpファイル – olivia

答えて

7

文字列を引用する必要があります。

の変更(コメントから):

if (select.options[i]== <?php echo "json_encode($categoriesSelect)"; ?>) 

へ:

if (select.options[i].text == "<?php echo $categoriesSelect; ?>") 

これはオプションのためのテキストに対して検証します。オプションの値と比較して.text.valueに変更してください。

...も削除されましたjson_encode()変数には文字列しか含まれていないためです。

+0

また 'select.options [i] .text'は単に' select 'の代わりにするべきです。options [i] ' –

+0

@RuslanBes - 正しい。更新しました...ありがとう! :) –

2

あなたは、PHPの関数の前後に引用符を削除する必要があります。

​​

から

if (select.options[i].text== '<?php echo $categoriesSelect; ?>') 
関連する問題