2013-05-28 4 views
0

Код ниже работает нормально (значения вставляются в базу данных на странице php), за исключением того, что я не возвращаю переменную в предупреждении. Вместо этого окно предупреждения начинает выплескивать код HTML-страницы.jquery ajax post success function variable

var dataString = 'amID=' + amID + '&aFname=' + aFname + '&aLname=' + aLname + '&aMi=' + aMi + '&aDegree=' + aDegree + '&aEml=' + aEml + '&aAdd=' + aAdd + '&aCity=' + aCity + '&aSte=' + aSte + '&aZip=' + aZip + '&aPhn=' + aPhn; 

     $.ajax({ 
      async: false, 
      url: "create_invite_insert.php", 
      data: dataString, 
      success: function(data) { 

      alert(data); 


      } 
     }); 
+0

Что вопрос? – Alexxus

+0

Я сомневаюсь, что ваш «create_invite_insert.php» не возвращает никаких данных. –

+0

create_invite_insert.php работает нормально, я просто не могу отобразить данные в поле предупреждения. – user1041931

ответ

0

Для оповещения требуется строка, но данные, возможно, здесь что-то другое. Попробуйте console.log(data);

+0

«Попробуй» не принадлежит коду – Alexxus

+0

ой, спасибо приятелю. – Alex

+0

console показывает « < ! - [if IE 9]> <мета голец установить = "UTF-8"> " – user1041931

0

Если вы хотите вернуть Json с сервера, прочитайте это post. Тогда, в Ajax успеха:

success: function(data) { 
    // first 
    alert(data.paramName); 

    // second 
    var strData = JSON.stringify(data); 
    alert(strData); 
} 

В первом варианте вы можете увидеть значение параметра с его именем (ParamName).
Во втором варианте вы можете увидеть все параметры внутри возвращаемых данных Json в виде строки.

+0

предупреждение (strData); показывая то же, что и консоль « ....», и т. д. – user1041931

+0

Он возвращает пустую страницу html. Что вы хотите вернуть с помощью ajax? – serefbilge

+0

Я надеялся увидеть переменную dataString следующим образом: «amID = 12 & aFname = John» и т. Д. – user1041931

0

Я думаю, что вы несовпадаете с «данными», определенными как список параметров запроса ajax, с «данными», которые являются параметром функции обратного обратного вызова.

Лучше переименуйте свой параметр обратного вызова в: resp_data или что-нибудь еще, что не будет двусмысленным.

var dataString = 'amID=' + amID + '&aFname=' + aFname + '&aLname=' + aLname + '&aMi=' + aMi + '&aDegree=' + aDegree + '&aEml=' + aEml + '&aAdd=' + aAdd + '&aCity=' + aCity + '&aSte=' + aSte + '&aZip=' + aZip + '&aPhn=' + aPhn; 

    $.ajax({ 
     async: false, 
     url: "create_invite_insert.php", 
     data: dataString, //this will be your dataString value as "data" ajax parameter 
     success: function(resp_data) { //this will be the response of your ajax request 

     alert(resp_data); 


     } 
    }); 
+0

alert показывает «< ! - <мета кодировка = "UTF-8"> " – user1041931

+0

вот что возвращается ваш PHP скрипт. проверьте свой php-url с помощью браузера (используя параметры в dataString) (из запроса ajax), и вы обязательно получите тот же ответ. – dweeves

0

Обратный вызов успеха ajax() передает объект как его первый параметр. Это будут данные, которые вы вернули с сервера. По умолчанию jQuery угадает тип данных. Вы можете прочитать на сайте API JQuery: http://api.jquery.com/jQuery.ajax/

Чтобы предупредить содержание Objet попробовать alert(JSON.stringify(data));

+0

alert показывает « " – user1041931

+0

Похоже, что ваш серверный скрипт возвращает HTMl-страницу. вам, вероятно, нужен новый скрипт, который просто вернет вам нужные вам данные. – cfs