Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 8 Ответов
  • 1601 Просмотров
*

nils_bor

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
AJAX в компоненте Joomla 3
« : 14.05.2014, 21:19:07 »
Уважаемые компетентные господа.

Столкнулся со странной ситуацией

Код
function getXmlHttp(){
  var xmlhttp;
  try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
    try {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (E) {
      xmlhttp = false;
    }
  }
  if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
    xmlhttp = new XMLHttpRequest();
  }
  return xmlhttp;
}

// javascript-код голосования из примера
function ajaxfunction(idon, ton, row, order) {
    // (1) создать объект для запроса к серверу
    var req = getXmlHttp() 
    var statusElem = document.getElementById('v1');
var gf_pagnom = document.getElementById('pagnom').value;
    req.onreadystatechange = function() { 
       
        if (req.readyState == 4) {
           statusElem.innerHTML = null // показать статус (Not Found, ОК..)
             if(req.status == 200) {
                var newElement = document.createElement('div')
  newElement.innerHTML = req.responseText
statusElem.appendChild(newElement)
            }
          }
     }
 
    req.open('GET', 'index.php?option=com_gforex&view=ajgforex&format=row&id='+idon+'&ton='+ton+'&gf_row='+row+'&gf_order='+order+'&gf_pagnom='+gf_pagnom, true); 
    req.send(null);  // отослать запрос
    statusElem.innerHTML = 'Ожидаю ответа сервера...'
}

надеюсь код вам знаком взял с форумов и немного адаптировал для себя, всё прекрасно работало и работает, за исключением возникшего сегодня - "НО"
начал расширять свой компонент, и обновление данных при помощи AJ перестало работать, всё перелопатил, перепроверил, передибагил - ошибок нет.
Подконец сломав голову обнаружил особенность AJ работает только на тех страницах модуля для которых у  меня есть опубликованный пункт меню т.е. существует алис.
Но так как  теперь я хочу применять эти функции на динамически формирующихся страницах, а следовательно нет возможности  создать пункт меню - возникла паника.

Подскажите как решить проблему, кто сталкивался
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: AJAX в компоненте Joomla 3
« Ответ #1 : 15.05.2014, 06:09:13 »
Вместо view=ajgforex я бы посоветовал использовать контроллер (task=my_controller.my_function) для аякса, все будет проще и прозрачнее.
*

nils_bor

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: AJAX в компоненте Joomla 3
« Ответ #2 : 16.05.2014, 02:28:41 »
через таск у меня вечно не получается, не до конца понял технологии, только данные получается подгружать, а когда viev глючит
*

nils_bor

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: AJAX в компоненте Joomla 3
« Ответ #3 : 16.05.2014, 02:29:59 »
но на самом деле проблема оказалась глубже
просто не работает часть JS функций не понимаю почему, на одной странице одни работают другие нет
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: AJAX в компоненте Joomla 3
« Ответ #4 : 16.05.2014, 04:50:34 »
Ставьте точки останова по функциям, смотрите значения переменных, думаю чо-то найдете.
*

nils_bor

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: AJAX в компоненте Joomla 3
« Ответ #5 : 16.05.2014, 21:50:04 »
огромное спасибо функции все заработали (точнее и работали, просто не отображался результат, повысил z-index и всё стало ок)
но одной вещи всё равно не пойму
если адрес страницы  выглядит так:
http://testfor/index.php/graf   - то AJ работает
а если http://testfor/index.php/graf?gflogin=98505 то сбрасывает в http://testfor/index.php/graf
подскажите логику
Это особенность Joomla, либо встроенного AJ
*

nils_bor

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: AJAX в компоненте Joomla 3
« Ответ #7 : 17.05.2014, 01:38:01 »
 req.open('GET', 'index.php?option=com_gforex&view=ajgforex&format=row&id='+idon+'&ton='+ton+'&gf_row='+row+'&gf_order='+order+'&gf_pagnom='+gf_pagnom, true);
*

nils_bor

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Re: AJAX в компоненте Joomla 3
« Ответ #8 : 17.05.2014, 02:06:04 »
Всем огромное спасибо за участие.
Понял в чём проблема, я некорректно использовал тег <a href="#" onclick='ajaxfunction(60,0,14,0)' >, думал что  href="#" просто ссылка на текущую страницу, а тем самым я скидывал параметры которые через адресную строку передавал
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Отправка файлов через ajax в модуль Joomla

Автор hemicide

Ответов: 19
Просмотров: 2265
Последний ответ 11.04.2022, 08:44:33
от sivers
Документация по разработки компонента для Joomla 3.x

Автор Aspik

Ответов: 9
Просмотров: 3311
Последний ответ 23.01.2021, 07:55:56
от hmr
Применение ajax (Аякс) в модуле Joomla

Автор tm2010

Ответов: 34
Просмотров: 5314
Последний ответ 26.09.2020, 09:38:35
от b2z
ajax проверку на вход. В стандартном модуле входа?

Автор Dolphin4ik_1

Ответов: 4
Просмотров: 759
Последний ответ 23.07.2020, 15:03:57
от sivers
Обработка AJAX в компоненте Joomla!3

Автор balancer

Ответов: 33
Просмотров: 11921
Последний ответ 23.07.2020, 07:45:53
от Dolphin4ik_1