私は動的変数で選択されたリストの値をグローバル変数に取得しようとしています。これは私が取得し、選択リストを埋める方法です:グローバル変数で動的選択リストの値を取得する方法は?
マイdropdown.jsスクリプト:
$(document).ready(function() {
$("#slctTable").change(function()
{
$.getJSON("dropdown_code/get_fields.php?table=" + $(this).val(), success = function(data)
{
var options = "";
for(var i = 0; i < data.length; i++)
{
options += "<option value='" + data[i] + "'>" + data[i] + "</option>";
}
$("#slctField").html("");
$("#slctField").append(options);
$("#slctField").change();
});
});
});
だからこの後、私は私のmain.jsにこのコードをしようと試みた選択リストの値を取得するためにscgript:
$('#slctField > option').each(function(){
console.log(this.value); // Use this.value to get the value of the option
});
var options = [];
$('#slctField > option').each(function(){
options.push(this.value);
});
console.log(options);
しかし、私はこの結果を私のスクリプトを実行するとき、私は戻って取得:
をしかし、私はコピーして、放火犯のコードを貼り付けて、それを実行したとき。私は結果を得る。私は値を取得しようとすると、選択リストはまだ満たされていないと思う。しかし、私はこれに長い間固執しており、私は現時点で何をすべきか分かりません。
あなたは非常に正しいです!あなたのGETは非同期で、main.jsコードの実行が終了してからずっと時間がかかるでしょう。グローバル変数への変更が何らかの形でコールバックに結びついていることを確認して、後でその動作を保証する必要があります。 –
ええ、それは私が思ったものです。しかし、どのようにグローバル変数にコールバックを結びつけることができますか? –
私は2つの例で答えを掲示しました。 –