0
case '1':
document.getElementById(q15).options.length = 0;
for (i = 0; i < australia.length; i++) {
     createOption(document.getElementById(q15), australia[i], australia[i]);
     }
break;

上記のコードは、配列情報を呼び出します。

function createOption(ddl, text, value) {
        var opt = document.createElement('option');
        opt.value = value;
        opt.text = text;
        ddl.options.add(opt);
    }

上記のコードは、以下のようなドロップダウンを作成します:

<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>

私が必要とするのは、PHPスクリプトも追加することです.これは可能ですか? これは次のようになります (注: ==1 '1' は変数である必要があります。トップの Javascript コードの '[i] でしょうか?:

<option value="1" <?php if ($results['q14']==1) echo "selected";?>>1</option>
<option value="2" <?php if ($results['q14']==2) echo "selected";?>>2</option>
<option value="3" <?php if ($results['q14']==3) echo "selected";?>>3</option>
4

1 に答える 1

1

同期接続では、JavaScriptはPHPがすでに解析された後に解釈されるため、JavaScript自体にphpコードを追加するか、phpスクリプトに非同期AJAXリクエストを作成して、どのオプションを選択するかを確認できます。最初の選択肢:

function createOption(ddl, text, value, selected) {
    var opt = document.createElement('option');
    opt.value = value;
    opt.text = text;
    opt.selected = selected;
    ddl.options.add(opt);
}

と電話で

createOption(ddl, "some option", "someopt", <?=($results['q14']==1)?'true':'false'?>);

このJavaScriptはPHPで解析する必要があるため、*。phpファイルに含めるか、*。jsをWebサーバーハンドラーマッピングに追加してください。

于 2012-08-16T08:51:37.483 に答える