2017-07-02 7 views
0

値が変更されたときにスクリプトを実行するドロップダウンがあります。しかし、今私はデータベースから選択した値を返し、選択された値が2のときにスクリプトを実行したいと思います。データベースが値を返すときにスクリプトを実行

<div class="col-md-9 col-sm-9 col-xs-12"> 
    <select class="form-control select2" id="status" name="status" style="width: 100%;"> 
    <option <?php echo ($row["status"] == "1") ? 'selected="selected"' : '';?> value="1">One</option> 
    <option <?php echo ($row["status"] == "2") ? 'selected="selected"' : '';?> value="2">Two</option> 
    </select> 
</div> 

出力の結果、ここで展開する必要があります:私はしたい

<script type="text/javascript"> 
    var dataEl = document.querySelector('#status'), 
    outputEl = document.querySelector('#output1'); 

    dataEl.onchange = function() { 
    if (dataEl.value === "1") { 
     outputEl.innerHTML = ' '; 
    } else if (dataEl.value === "2") { 
     outputEl.innerHTML = '<div>(script)</div>'; 
    } 
    }; 
</script> 

:これはのonchange実行されているスクリプトです

<p id="output1"></p> 

ここ

は私のドロップダウンですonchangeのためにスクリプトを保持する。しかし、データベースから返された値が 2のときにこのスクリプトを実行したいと思います。私は dataEl.onLoadスクリプトを追加するような別のスクリプトを試しましたが、これも値 2のスクリプトを示していませんでした。

誰かが私にこれを行う方法を知っていますか?

+0

使用 '$( "選択オプション:選択").val()'選択ボックス –

+0

の選択された値を取得します私はこれをジャバスクリプトに入れる必要がありますか? – John

+1

例を参照してください。https://jsfiddle.net/z1wyz62s/ –

答えて

1

選択オプションの選択値を取得するには、selectedIndexを使用する必要があります。

var e = document.getElementById("status"); 
var sel = e.options[e.selectedIndex].value; 

プライマリ例:@ジョンによってhttps://jsfiddle.net/z1wyz62s/

コンプリート例:https://jsfiddle.net/z1wyz62s/3/

0

なぜ呼び出さないのですか?

dataEl.onchange = function() { 
    if (dataEl.value === "1") { 
    outputEl.innerHTML = ' '; 
    } else if (dataEl.value === "2") { 
    var result = your_script(); 
    outputEl.innerHTML = '<div>'+result+'</div>'; 
    } 
}; 
関連する問題