Ajax+php (автоматизация)

Тема в разделе "Другие языки", создана пользователем CrashX, 6 сен 2010.

Модераторы: Цукер
  1. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    [как сделать] загрузка любых данных в модальное окно на jquery

    есть страницы которые содержат
    ссылки, формы в общем обычный сайт
    --
    чего хочется
    загрузка html(точнее чего угодно, любой страницы...) в модальное окно на jquery
    и что бы в ишаке работало, хотя бы в IE7, от IE6 отучу сам
    --
    -в админке есть галочка ajax (уже реализовано) =)
    --единый обработчик, скажем я кликаю по ссылке открывается модальное окно (по адресу указанному в <a href='')
    что нужно написать для Jquery что бы такое использовать
    пока по галочке грузится только либа JQ )
     
  2. jo0o00nyy

    jo0o00nyy Постоялец

    Регистр.:
    12 май 2010
    Сообщения:
    65
    Симпатии:
    27
    Как вариант, можно использовать любой "Лайтбокс", который умеет показывать урлы в iframe (обычно лайтбоксы сами берут данные из href), например fancybox http://fancybox.net/ а потом его подключить
    Код:
    		$("a").fancybox({
    		'zoomSpeedIn': 300,
    		'zoomSpeedOut': 300,
    		'overlayShow': false,
    		'frameWidth':800,
    		'frameHeight':parseInt($(window).height()-100)
    		});
    Конечно можно не все линки захватить, а только у которых указан определенный класс "open_frame"
    Код:
    $("a.open_frame").fancybox({...
     
  3. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    ифрейм не лучшее решение, тк есть мульбокс, он без ифрейма
    нет возможно не так обяснил нашел на мутулс, но его не хочу
    хочу JQuery
    на мутулс это MultiBox

    что мне нужно
    есть ссылка вида

    ключевое слово rel='modalbox'

    зачем так?!
    так проще всего, сама модальная форма универвальна ибо имеет кнопку закрть, значит в нее можно грузить все...

    теперь с картинками это LightBox (там rel='lightbox') и кусочек кода для обработки, теперь тоже самое хочу для всего остального,


    не хочу мутулс ставить, тк использую JQ (возможно потом перейду на JQuery UI)
     
  4. bork75

    bork75 Д☼брая собака )

    Регистр.:
    21 июн 2008
    Сообщения:
    1.449
    Симпатии:
    716
    Попробуй
    http://highslide.com/

    Прямо на главной увидишь примеры реализации галереи в различных вариантах, а чуть ниже вывод блоков

    HTML content
    Scrolling HTML content
    AJAX content
    Dynamic AJAX content
    Iframe content
    Iframe with form
    Display flash
    YouTube w/fade effect

    Вообще highslide - это универсальный инструмент вывода любой информации на странице.
    Будут вопросы - пиши.
     
    XSiteCMS нравится это.
  5. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    все бы хорошо, но
    это не расширение JQuery, тогда проще использовать JQuery UI (но из-за сложной стилизации нет большого желания), а JQuery знаком в общих чертах...
    ---
    я не хочу использовать дестяки сторонних библиотек и потом напоротся на несовместимость, с JQ, такое событие минимально

    Добавлено через 47 минут
    вот мультибокс
    но это мутулс а мне надо JQuery
    http://github.com/samuelbirch/MultiBox
     
  6. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    все решено использую http://flowplayer.org/tools/download/index.html
    код
    в начале страницы
    и сам диалог
     
  7. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    теперь
    задача усложняется
    ---------
    нужно сделать автозавершение форм
    те
    -
    в этом модальном окне нажимаю отправить и форма отправляется и данные уходят

    но без ответа, а если есть ответ то его хорошо бы получить в тоже окно, приходит в это же модальое окно
    --
    есть может у кого идеи, что бы не писать тонны кода
     
  8. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    новая трабла
    есть плагин JQuery.form.js
    последний
    при отправке отвсе отправляет,
    сделал что бы ответ отправлял в это модльное окно,
    долго бился головой, но когда начал отлаживать выявил что он не отправляет
    поэтому грузится вся страница а не ее часть (
    зло, выделять в отдельный фаил обработчик не есть хорошо, может есть как поправить плагин ?

    при обычное загрузке

    при загрузке модального окна
    при обновлении данных в модальном окне
     
  9. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    проблема исчерпана, как говорится решать и не жди что ее кто то решит за тебя
    в формах НЕЛЬЗЯ использовать
    не enctype='application/x-www-form-urlencoded'
    не enctype='multipart/form-data'
    и лшуче вообще не использовать enctype
    если это убирать то данные получаю, но у меня теперь другая проблема,
    ---
    как ни странно в алерт данные грузялся ав целевой див нет )
    странно...
    кто вообще работал с плагином JQuery.Form ?
     
  10. CrashX

    CrashX В прошлом XSiteCMS

    Регистр.:
    6 июн 2008
    Сообщения:
    682
    Симпатии:
    112
    Код:
    <script type="text/javascript">
      $(document).ready(function(){
        var options = {
    //      target: "#modalbox",
          url: "{action}",
          success: showResponse, // функция, вызываемая при получении ответа
          type: "post", // get или post
          dataType: "html", // text, hmtl, xml, script или json
          //clearForm: true,
          //resetForm: true,
          timeout: 3000 // ожидание ответа
        };
        $("#userform").submit(function() {
          $(this).ajaxSubmit(options);
          return false;
        });
      });
    // Debug
    function showResponse(responseText, statusText, xhr, $form)  {
        alert("status: " + statusText + "\n\nresponseText: \n" + responseText +
            "\n\nThe output div should have already been updated with the responseText.");
       $("#modalbox").html(responseText);
    }
    </script>
    
    ненравится мне костыль вида
    странно при отправке формы все уходит, получаем ответ
    я его вижу в алерте, в а целевой див указанный выше
    не чего не попадает, ни в этот не в другой указанный на странице, или на самой форме,
    а с попошью костыля работает но, почему не работает без него ?
    ---
    еще
    костыль костылем, но возникла исключительная ситуация когда
    -------
    есть модальное окно в которе грузится форма, она посылается данные на страницу 2, та обрабатывает и отдает ответ,
    ответ об ошибке попадает в модальное окно что и нужно, но если человек авторизовался то беда, ответ приходит 0, те
    если рассмотреть это же без аякса то
    форма на странице 1 передает данные на страницу 2, если все плохо то ошибка, если все хорошо, происходит перезагрузка страницы и все...
    -
    так вот с аяксом модальное окно остается пустым)
    как бы его закрыть в случае такого ответа ?