jQuery + ajax

Тема в разделе "PHP", создана пользователем EFL, 1 май 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. EFL

    EFL

    Регистр.:
    31 июл 2008
    Сообщения:
    153
    Симпатии:
    56
    Подскажите как сделать ,чтобы через jquery загружало страницу index.php?id=$id&rating=$type без перехода :bc:
     
  2. [Гилыч]

    [Гилыч] Постоялец

    Регистр.:
    5 авг 2008
    Сообщения:
    57
    Симпатии:
    17
    HTML:
    
    $(document).ready(function(){
    $("#button").click(function(){
    $.get('./index.php', {id:$(this).attr("rel"), rating: 'type'}, function(data){
    $("#divMain").append(data);
    });
    return false;
    });
    });
    
    HTML:
    
    <intput type="button" id="button" value="get page" rel="<?php echo $id;?>">
    <div id="divMain"></div>
    
     
    EFL нравится это.
  3. EFL

    EFL

    Регистр.:
    31 июл 2008
    Сообщения:
    153
    Симпатии:
    56
    Работает ,но у меня несколько кнопок таких на странице,работает только 1 .
     
  4. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    1. Вопрос не имеет отношения к PHP.
    2. Сделай каждой кнопке свой id и передавай его в функцию.
     
  5. [Гилыч]

    [Гилыч] Постоялец

    Регистр.:
    5 авг 2008
    Сообщения:
    57
    Симпатии:
    17
    $id и так в rel атрибуте есть, генится же с пом. php
    для нескольких кнопок надо делать так....

    HTML:
    
    $(document).ready(function(){
        $("input.button").each(function(){
             $(this).click(function(){
                   $.get('./index.php', {id:$(this).attr("rel"), rating: $(this).attr("attr_type")}, function(data){
                          $("#divMain").append(data);
                   });
                   return false;
              });
         });
    });
    
    PHP:
    //some $type=???.....
    foreach($arr_id as $id){
    echo 
    '<intput type="button" class="button" value="get page" rel="'.$id.'" attr_type="'.$type.'">';
    }
    echo 
    '<div id="divMain"></div>';
     
  6. PHP_Master

    PHP_Master

    Регистр.:
    3 фев 2008
    Сообщения:
    2.647
    Симпатии:
    590
    Такой код навесит обработчик на все буттоны на странице, а это не всегда нужно.
    ИМХО, написание функции с передачей ей id при клике, более грамотное решение (или твой код, но с добавлением ивента не на все буттоны, а по более "узкому" селектору).
     
  7. [Гилыч]

    [Гилыч] Постоялец

    Регистр.:
    5 авг 2008
    Сообщения:
    57
    Симпатии:
    17
    ну само собой...тут работает на сам деле на все input с классом button
    если задачу сузят - сделаем другой код )) это не долго ))
     
  8. phillip

    phillip

    Регистр.:
    4 сен 2007
    Сообщения:
    413
    Симпатии:
    15
    Тоже однажды была задачка аяксом подгружать файлы с использованием jquery. только я туда аккордеон еще прикрутил. Посмотри, может быть тебе подойдет
     

    Вложения:

    • accordeon.rar
      Размер файла:
      42,8 КБ
      Просмотров:
      4
  9. EFL

    EFL

    Регистр.:
    31 июл 2008
    Сообщения:
    153
    Симпатии:
    56
    PHP:
    function rate(id,rate)

        $.
    get("http://site/index.php?id="+id+"&rating="+rate, { ididraterate },
        function(
    data)
        {
            
    document.getElementById("q"+id).innerHTML data;
        });    
    }
    PHP:
    <span style="cursor: hand;" onClick="rate($id,'minus');return false;">-</span>
    Вот так сделал,может кому понадобиться.
    Всех, кто отписал благодарю.
     
  10. [Гилыч]

    [Гилыч] Постоялец

    Регистр.:
    5 авг 2008
    Сообщения:
    57
    Симпатии:
    17
    $.get("http://site/index.php?id="+id+"&rating="+rate
    вот это не нужно...ты get'ом все равно в index.php обращаешься и туда как раз
    {id: id, rate: rate } передаешь
    PHP:
    function rate(id,rate)

        $.
    get("http://site/index.php", { ididraterate },
        function(
    data)
        {
            $(
    "#q"+id).append(data);
        });    
    }  
     
Статус темы:
Закрыта.