次のコードがあります。ドロップダウン選択がトリガーされた後、最初の部分がPHPからJSONを取得します。結果は、それが機能することを確認するためだけに、「results」と呼ばれるdivに配置されます。その時点まではすべてが良さそうです。また、JSONを解析し、アラートのシーケンスで個々の要素を表示する数行のコードがあります。これも、この時点まで機能していることを確認するためです。ただし、この後、アラートの作成と同様の方法でJSONを解析し、個々の結果のみを別々の配列に配置しようとします。$ .eachが実行されたときに結果を警告するチェックがあり、コードブロックが機能しているかどうかを確認できます。ただし、動作しません。かっこが正しく設定されていないか、どこかで別の関数を宣言する必要があるのではないかと推測しています。
ご協力いただきありがとうございます。
$(document).ready(function() {
$('#routesDropDown').change(function() {
var queryParam = 'routesStations=' +$(this).val();
$.post('getstations.php', queryParam, processResponse);
});
function processResponse(data) {
$('#results').html(data);
// parse the data and store in variable, "obj"
var obj = jQuery.parseJSON( data );
// iterate through each value in the "obj" variable
$.each(obj, function(key, value) {
alert(value.color + ' ' + value.abbr + ' ' + value.lat + ' ' + value.lng);
});
//THIS IS THE PART THAT DOES NOT WORK...
var obj = jQuery.parseJSON( data ) {
var color = [];
var abbr = [];
var lat = [];
var lng = [];
$.each(obj, function(value) {
color.push(value.color);
abbr.push(value.abbr);
lat.push(value.lat);
lng.push(value.lng);
alert(value.color + ' ' + value.abbr + ' ' + value.lat + ' ' + value.lng);
})};
});