Я запрашиваю страницу PHP (не на внешнем сайте) с использованием $ .getJSON, который вернет набор результатов MySQL, я использовал json_encode() для форматирования набора результатов строка 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}
Я не знаю, почему <??>
Включено. Я делаю это точно вызов в двух разных местах, на два разных таблицах (ни работает), это то, что я получаю от другого вызова:
<??> [{"field_valueA":905,"field_valueB":18.180000305176,"field_valueC":16453}]
Если кто-нибудь имеет представление о том, что происходит на I Я ценю это.
EDIT: Теперь кажется, что ВСЕ мои ответы ajax во всем моем приложении префиксны с <??>
. Все они работали до этого, а теперь это не так, я понятия не имею, что происходит.
«Я не знаю, почему это включено». Какие?? Ваш вопрос не особенно ясен. – Jere
Я думаю, что ОП спрашивает, почему '?>' находится в ответе, отправленном с сервера. – BNL
А ... Я понятия не имел. Я подумал, что это просто означает консоль. – Jere