私は、結果セットを書式設定するためにjson_encode()を使用して、MySQL結果セットを返す$ .getJSONを使用してPHPページ(外部サイトではありません)を照会しています。 JSON文字列問題はデータを取得することですが、一部の非表示フィールドの値を設定しようとすると何も起こりません。私はこれが働いていたが、今はそうではない。私はそれを実現することなく何かを変えたにちがいない。.getJSON .each()JSONデータを解析しない
のjQuery:ここにコードだ
$.getJSON('includes/Lookup.php', {locationType:$('#location').val()}, function(data) {
var valA = $('#valA');
var valB = $('#valB');
var valC = $('#valC');
$.each(data, function(index, data) {
valA.val(data.field_valueA);
valB.val(data.field_valueB);
valC.val(data.field_valueC);
});
});
Lookup.php:
<?php
$db = new MySqlDB();
if(!$db) {
// Show error if we cannot connect.
echo 'ERROR: Could not connect to the database.';
} else {
if(isset($_GET['locationType'])){
$locationType = $_GET['locationType'];
$db->where('id', $locationType);
$sql = "SELECT field_valueA, field_valueB, field_valueC FROM table";
$results = $db->query($sql);
echo json_encode($results);
} else {
echo 'not set';
}
}
は、これは私がFirebugの中で得るものです:
<??> {"field_valueA":2,"field_valueB":3.12,"field_valueC":12345}
なぜ<??>
私にはわかりません含まれています。私は2つの異なるテーブルの上に、2つの異なる場所で、この正確なコールをやっていないのです(どちらも働いている)これは私が他の呼び出しから取得していますものです:誰もが私に何が起こっているかのようなアイデアを持っている場合
<??> [{"field_valueA":905,"field_valueB":18.180000305176,"field_valueC":16453}]
それを感謝します。
EDIT:アプリケーション全体のすべてのAjaxレスポンスに接頭辞<??>
が付いているようです。彼らはすべて前に働いていましたが、私は何が起こっているのか分かりません。
「なぜ私は含まれているのかわかりません」何??あなたの質問は特に明確ではありません。 – Jere
私はOPがなぜサーバーから送信された応答に '?>'があるのかと質問していると思います。 – BNL
ああ...私は分かりませんでした。私はそれがちょうどコンソールとして意図されていると思った。 – Jere