Тип jQuery AJAX: 'GET', проблема с передачей значения - PullRequest
1 голос
/ 09 марта 2010

У меня есть вызов jQuery AJAX с типом: 'GET', подобный этому:

$.ajax({type:'GET',url:'/createUser',data:"userId=12345&userName=test",
   success:function(data){
     alert('successful');
   }
 });

В моей консоли вывод: GET: http://sample.com/createUser?userId=12345&userName=test params: userId 12345 userName test

В моем скрипте я должен получить значение, используя $ _GET ['userId'] и $ _GET ['userName'], но я не могу получить значение, переданное запросом ajax, используя метод GET.

Есть идеи, как это сделать?

спасибо,

Ответы [ 2 ]

12 голосов
/ 09 марта 2010

Единственное, что я вижу неправильно в коде (который больше не применяется, поскольку вопрос был отредактирован (что предполагает, что код был переписан для вопроса и может не точно отражать реальный код, который используется) функция успеха находится не в том месте.

У вас есть:

$.ajax(
   {
      type:'GET',
      url:'/createUser',
      data:"userId=12345&userName=test"
   },
   success: function(data){
     alert('successful');
   }
);

, который должен быть:

$.ajax(
   {
      type:'GET',
      url:'/createUser',
      data:"userId=12345&userName=test",
      success: function(data){
        alert('successful');
      }
   }
);

Несмотря на это, ваше описание вывода на консоль предполагает, что данные отправляются правильно. Я бы попробовал протестировать этот скрипт, чтобы увидеть, что на самом деле возвращает PHP (вы можете увидеть тело ответа в консоли Firebug):

<?php
    header("Content-type: text/plain");
    print_r($_REQUEST);
?>
0 голосов
/ 09 марта 2010

В URL отсутствует расширение, и вы можете передавать данные как объект, поэтому jquery преобразует их в строку

$.ajax({
  type:'GET',
  url:'/createUser.php',
  data:{"userId":"12345","userName":"test"},
  success:function(data){
    alert('successful');
  }
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...