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

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Внедрение AJAX в компонент
« : 03.12.2010, 12:54:50 »
Добрейший всем денечек.

Дела такие. Добрался я до необходимости внедрения AJAX при разработке компонента. Сразу скажу, что в JS я не силен. Пока моих знаний хватает только на то, чтобы баловаться с jQuery. Поэтому первое что пришло на ум - это использовать jQuery.ajax(), и передвать через параметр url имя нужной функции для выполнения. Ну как-то так:
Код
url: "<?php echo JURI::root();?>index.php?option=com_component&view=myview&task=ajaxtask&no_html=1"

Но что-то мне это показалось каким-то неверным способом что-ли. Вообщем не уверен я в правильности внедрения возможностей AJAX в компонент. Начал рыть Инет на предмет AJAX Framework + PHP, даже что-то нашел, но не знаю как мне тут подступится.

Вопрос - каким образом Вы реализуете внедрение AJAX при разработке компонентов? Используете ли какой-то AJAX framework или пишите свое?
*

SmokerMan

  • Гуру
  • 5293
  • 720 / 26
Re: AJAX Framework
« Ответ #1 : 03.12.2010, 13:03:15 »
Цитировать
AJAX framework
это что то новенькое :)
вот простейшие примеры использования AJAX в компонентах Joomla.
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Re: AJAX Framework
« Ответ #2 : 03.12.2010, 13:18:10 »
Ну не совсем простейший. Вот например
Код: javascript
$('в див с этим id подгрузит с помощью AJAX').load('index.php?option=com_component&view=myview&tmpl=component');
mootools правда.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Re: Внедрение AJAX в компонент
« Ответ #3 : 03.12.2010, 15:10:17 »
это что то новенькое :)
вот простейшие примеры использования AJAX в компонентах Joomla.
Ну это в принципе можно с легкостью сделать с помощью jQuery.ajax(). Я имел ввиду, может кто-то имеет опыт внедрения вот таких вещей как XAJAX или им подобных.
*

SmokerMan

  • Гуру
  • 5293
  • 720 / 26
Re: Внедрение AJAX в компонент
« Ответ #4 : 03.12.2010, 15:45:48 »
Ну это в принципе можно с легкостью сделать с помощью jQuery.ajax().
ну дык с библиотеками естесно проще :)
Я имел ввиду, может кто-то имеет опыт внедрения вот таких вещей как XAJAX или им подобных.
это к смарту :) его JComments, по моему, на нем сделан.

Просто не понятно чего нужно то. Ты посылаешь данные по http через пост или get, какие приблуды использовать для этого без разницы чистый JS, XAJAX, jx, или библиотеки. Данные поступают на сервер, делаешь с ними что нужно и отдаешь результат.
« Последнее редактирование: 03.12.2010, 15:59:04 от SmokerMan »
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Re: Внедрение AJAX в компонент
« Ответ #5 : 03.12.2010, 16:40:00 »
Ну нужно в принципе классические вещи делать. Я просто думал, что может есть какие-то универсальные варианты внедрения, чтобы не юзать jQuery.ajax() постоянно. Вот мне нравится, как это все реализовано у JomSocial, но моих знаний не хватает такое сделать... Если только у них куски "забрать"  ^-^
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
Re: Внедрение AJAX в компонент
« Ответ #6 : 03.12.2010, 17:53:28 »
@bzzik
Т.е. нужна простенькая js-библиотека и пример ее использовани?
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Внедрение AJAX в компонент
« Ответ #7 : 03.12.2010, 18:06:54 »
В чем собственно вопрос - клиентская часть или серверная интересует?
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Внедрение AJAX в компонент
« Ответ #8 : 03.12.2010, 18:11:05 »
Ну нужно в принципе классические вещи делать. Я просто думал, что может есть какие-то универсальные варианты внедрения, чтобы не юзать jQuery.ajax() постоянно. Вот мне нравится, как это все реализовано у JomSocial, но моих знаний не хватает такое сделать... Если только у них куски "забрать"  ^-^
Тебе нужно тогда поинтересоваться у них на форуме про это. Там есть доступ к API JomSocial, для легальных заказчиков. Мне как бы это-то-же нужно...
Всё что не анархия, то фашизм...
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
Re: Внедрение AJAX в компонент
« Ответ #9 : 03.12.2010, 18:31:17 »
@bzzik
Т.е. нужна простенькая js-библиотека и пример ее использовани?
Аха, как она взаимодействует с PHP и фронтом  ^-^

В чем собственно вопрос - клиентская часть или серверная интересует?
Ну в принципе - комплекс... Я пока сам не уверен - только начинаю в это вникать  ::)

Тебе нужно тогда поинтересоваться у них на форуме про это. Там есть доступ к API JomSocial, для легальных заказчиков. Мне как бы это-то-же нужно...
Хмм, поспрошаю у них. Может чего дельного скажут, хотя сомневаюсь :)

P.S.
Только не бейте сильно, если силно замучил глупыми вопросами...  *DRINK*
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
Re: Внедрение AJAX в компонент
« Ответ #10 : 03.12.2010, 19:10:10 »
@bzzik
Лучше всего, конечно, делать так, как сказал Lex -- минимум усилий и библиотека эта почти всегда грузится на сайте.

Но если есть желание и возможность не подгружать на страницу Mootools, то можно использовать вот этот скрипт (подгружать его в хеадер страницы все равно нужно :) ). В принципе, похожая метода расписана и у SmokerMan.

Пример использования:

1. Как отдельный файл JS. Ссылка формируется в коде PHP и просто передается при вызове JS-функции.
Код: js
// Example #1
function alertDemoData(url) {
var params = "";
// Set the call back function
yvReq.setCallBackFunc( function() {
alert(yvReq.responseText);
});
// Send the request
yvReq.doPost( url, params, null, 'loading' );
}

// Example #2
// Get result and put it into element with id="demo_data" and during this operation we show element "loading"
function getDemoData(url) {
var params = "";
// Send the request
yvReq.doPost( url, params, 'demo_data', 'loading' );
}

// Example #3
// Our result is depending on some parameters posted with url
function loadProperty(url) {
var params = "&cp_id=" + document.getElementById("cp_id").value;
// Send the request
yvReq.doPost( url, params, 'divProperty', 'reload_property' );
}

2. С использованием в HTML.
Код: html
<!--// здесь просто указываем нужный нам видимый HTML-элемент с id="elmToggler" //-->
<a href="javascript: void(0);" onclick="yvReq.toggle('elmToggler');">показать/спрятать элемент</a>

<!--// здесь просто переписываем содержимое нужного нам видимого HTML-элемент с id="products_main_div" (хотя можно тут по всякому извращаться) //-->
<a href="javascript: void(0);" onclick="yvReq.html('products_main_div', yvReq.get('reloaded_product').innerHTML);">изменить элемент</a>

[вложение удалено Администратором]
*

b2z

  • Глобальный модератор
  • 7290
  • 778 / 0
  • Разраблю понемногу
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
Re: Внедрение AJAX в компонент
« Ответ #12 : 03.12.2010, 21:38:04 »
@bzzik
Пожалуйста. Надеюсь, это то, что было нужно. ;)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

AJAX для модуля на 1.5

Автор voland

Ответов: 2
Просмотров: 1198
Последний ответ 04.03.2016, 12:08:41
от b2z
Надо переделать готовый компонент Генератор Купонов J2.5 на J1.5

Автор mkoff

Ответов: 3
Просмотров: 1930
Последний ответ 18.12.2014, 10:22:04
от assa1988
Компонент вывода информации из внешней базы данных

Автор rambeer

Ответов: 33
Просмотров: 10462
Последний ответ 12.09.2014, 05:01:34
от Mad_Doc
как через AJAX запрос получить только данные из функции, без HTML кода?

Автор lottis

Ответов: 7
Просмотров: 3411
Последний ответ 26.03.2012, 02:40:54
от lottis
Модифицировать компонент

Автор karabert

Ответов: 0
Просмотров: 1212
Последний ответ 28.11.2011, 22:39:04
от karabert