Размещение плагина jquery в модуле joomla - PullRequest
1 голос
/ 10 июня 2010

Я пытаюсь создать модуль в Joomla, который использует один плагин jquery.Я должен сделать операцию AJAX при нажатии на элемент в модуле.В настоящее время я указываю полный путь к файлу php.Но я знаю, что это неправильный метод.

Код в плагине jquery такой:правильный способ указать путь в файле плагина jquery.Также мне нужно знать, куда поместить файл плагина jquery в модуль.

Ответы [ 3 ]

1 голос
/ 01 июля 2010

Я нашел ответ в следующем блоге.

http://blog.subooa.com/development/joomla-coding/ajax-in-joomla-with-jquery/

0 голосов
/ 22 декабря 2010

Atlast Мне удалось найти хорошее решение для использования Ajax с использованием Jquery в Joomla.

Для этого сначала вам нужно создать вид и модель для получения необходимого HTML через вызов AJAX.

Затем используйте код jQuery, подобный следующему, чтобы получить только выходные данные требуемого представления.

//Code to get the base URL of joomla installation
szURL = document.URL;
componentList = szURL.split('/');
szDocument = componentList[componentList.length-1];
szURL = szURL.replace(szDocument, "");

//URL to the required component
url = szURL + "?option=COMPONENT_NAME&view=VIEW_NAME&tmpl=component&uid=" + getRandomValue();
jQuery.get(url, function(data) {
    jQuery("#mydiv").html(data);
});


//Function to get a random number
//It is used for Ajax calls from IE; Else IE will use the cache values
function getRandomValue(){
    return Math.floor(1000000 * (Math.random() % 1))
}

Обратите внимание на URL, используемый для вызова ajax. Он использует "tmpl=component", чтобы получить только HTML для выбранного компонента без HTML Joomla.

0 голосов
/ 19 июня 2010

Лучший способ сделать это - использовать метод JURI :: root для создания переменной javascript, которую я затем смогу использовать.В вашем php-коде вы должны сделать что-то вроде этого:

?>

<script type="text/javascript">
        var joomlaRoot = '<?php echo JURI::root(); ?>';
</script>

<?php

Затем вы можете использовать эту переменную при выполнении вызова AJAX.

Что касается места размещения файла плагина jqueryв своем модуле вы можете поместить его в любом месте в каталог вашего модуля, а затем снова использовать JURI :: root, чтобы создать путь к нему, и вызвать метод JDocument :: addScript .

Кстати, вы можете рассмотреть возможность использования MooTools.Он поставляется в комплекте с Joomla!уже.У него есть возможность делать вызовы AJAX.Кроме того, используя его, вы избегаете возникновения конфликтов jQuery.

...