Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ajax jquery передача структуры обратно в javascrip 
V
    Опции темы
gcc
Дата 26.1.2010, 23:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



подскажите, как переделаить это 

Код

58.$("#submit_form_ajax").click(function(){
59. 
60.    $("div#display_user_details").html('');
61. 
62.    $.getJSON('?ajax=1', function(result){
63.        $("div#display_user_details").html(
64.            '<h3>User Details</h3>'
65.            + 'Name: ' + result.first_name + ' ' + result.last_name + '<br/>'
66.            + 'Sex: ' + result.sex + '<br/>'
67.            + 'Age: ' + result.age + '<br/>'
68.        )


чтобы в success пришла структура из того скрипта на сервере которому я передал форму
http://rohan.almeida.in/archives/get-start...eb-applications

Код

$(function() {
  $('.error').hide();
  $('input.text-input').css({backgroundColor:"#FFFFFF"});
  $('input.text-input').focus(function(){
    $(this).css({backgroundColor:"#FFDDAA"});
  });
  $('input.text-input').blur(function(){
    $(this).css({backgroundColor:"#FFFFFF"});
  });

  $(".button").click(function() {
        // validate and process form
        // first hide any error messages
    $('.error').hide();
        
      var name = $("input#name").val();

        var email = $("input#email").val();

        var phone = $("input#phone").val();

        
        var dataString = 'name='+ name + '&email=' + email + '&phone=' + phone;
        //alert (dataString);return false;
        
        $.ajax({
      type: "POST",
      url: "/comments_photo/add",
      data: dataString,
      success: function() {
        $('#contact_form').html("<div id='message'></div>");
        $('#message').html("<h2>Contact Form Submitted!</h2>");

      }
     });
    return false;
    });
});


я хотел принять в success данные из сервера и их там перебрать, например, если все добавлось, то вывести текст добавленного сообщени, его id, время и написать что сообщение добавилось, а если ошибка, то написать какие именно ошибки (перебрать массив) (у меня двуязычный сайт)

можно ли в success вернуть и массив и хэш вместе в json? или как тут сделать?
PM WWW ICQ Skype GTalk Jabber   Вверх
gcc
Дата 27.1.2010, 04:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



извините, проблема была в том что в скрипте на сервере не закомментировал эту строку     #  $c->stash->{template} = 'edit_comment.tt';

и шаблонизатор "рубал" json



но есть вопрос, как передать и массив и хэш?


вот я пробую 2 хэша передать

Код

      success: function(msg, msg2) {
        $('#contact_form').html("<div id='message'></div>");
        $('#message').html(msg.age + ' ' + msg2.age);

      }
     });


не передается

в скрипте, 

Код

    my $json = to_json($user_details);

        $c->response->content_type("application/json");
       $c->response->body( $json, $json );
        


работает, но пишет, что msg2.age не определено 

как передать 2 хэша?
PM WWW ICQ Skype GTalk Jabber   Вверх
12345c
Дата 27.1.2010, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 6
Всего: 101



Из jQuery Core API :
# success (Function), default:
A function to be called if the request succeeds. The function gets passed two arguments: The data returned from the server, formatted according to the 'dataType' parameter, and a string describing the status. This is an <a href='Ajax_Events'>Ajax Event</a>. <pre>function (data, textStatus) { // data could be xmlDoc, jsonObj, html, text, etc... this; // the options for this ajax request } 

Так что все данные - из 1-го параметра.
И у Вас в msg - строка (т.к. dataType не указан, и скорее всего, тип html), а Вы каким-то образом хотите получить от неё msg.age.
Склеивайте на сервере строку, на клиенте разделяйте, будут N параметров в ответе.




--------------------
Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0532 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.