jquery $ .getJSON, возвращающий неопределенную переменную, данные JSON присутствуют - PullRequest
1 голос
/ 14 января 2012

В настоящее время я работаю над междоменной передачей данных, и я столкнулся с действительно большим блоком, я потратил часы и часы, пытаясь заставить это работать, кажется, это правильный способ сделать это, так что любые указатели был бы очень принят.

Я использую jquery & getJSON для возврата идентификатора со страницы php, которая json_encodes данных;

Мой код JQuery `

 $.getJSON("http://www.icetrack.it/scripts/php/data/ipAddress.php",

    {    
        location: locationVar,
        user_key: user_key,
        refer: refer,
        title: title,   
        async:false,        
        dataType: 'json',
        success: function(data) {

             alert(data);
        }
                 },"json"); 

, который говорит с php-страницей, которая не выводит ничего, кроме

echo json_encode(array("id"=>"$id")); ?>

Эта страница выводит JSON как таковой

{"id":"198"} 

И все же, все, что вернет мой jquery - неопределенная переменная, где я ошибаюсь, это сводит с ума!

Спасибо всем!

1 Ответ

0 голосов
/ 14 января 2012

Вы передаете неправильные параметры $.getJSON() - многие из тех, что вы указали, работают только для $.ajax().

В частности, параметр data для $.getJSON() предназначен для CGI параметров, отправляемых на сервер, а не для параметров arbirtrary $.ajax().

Попробуйте это:

$.ajax({
     url: "http://www.icetrack.it/scripts/php/data/ipAddress.php",
     data: {    
        location: locationVar,
        user_key: user_key,
        refer: refer,
        title: title
     },
     async:false,        
     dataType: 'json',
     success: function(data) {
         alert(data);
     }
 });
...