background image

ajax 在 joomla 中的原生态应用代码

一般很少看到

joomla 中使用 ajax,笔者以前说到过用 jquery 来实现,对于那些验证用户名不能

重复

,邮箱不能重复,以及联动菜单,等等的应用,使用 ajax 是免不了的

今天笔者在这里讲一讲使用

joomla 自带的 mootools javascript 库的实现 ajax,由于是自带库,

所以不用管有没有

jquery,那么怎么实现呢,首先建立一个 ajax 的获取按钮,一般我们都是在组

件的编辑中用到

,所以文件一般在 views\你的视图\tmpl\

default

.php 里面: 

代码如下

:

 
<input type="button" id="ajaxButton" value="Get 方式" /> 
<div id="someID"></div> 

$doc

 =& JFactory::getDocument(); 

$script

 = <<<SCRIPT 

window.addEvent('domready', 

function

() { 

$('ajaxButton').addEvent('click', 

function

 () { 

new

 Ajax( 

'index.php?option=com_category&controller=category&task=aj&format=ajax', 

method: 'get', 
update: 'someID' 

).request(); 
}); 
}); 
SCRIPT; 
 
input 这一行是一个获取 ajax 的按钮,接着是显示返回数据的 div 层,下面就是使用 ajax 的
mootools 代码,简单说下,这里是通过 getDocument 类方法添加 js 到文档 head 里面,注意这里$
是代表

mootools 类库,ajax 里面的网址参数首先是组件名,控制器名,执行的方法 aj,这个写在

控制器里面

,就是点击后执行的方法,需要写返回数据,最后就是返回数据类型,这里必须是

ajax,否则会把整个文档都返回,我们这里只要 aj 方法的返回数据部分.有两个参数,get 是获取
数据方式

,someID 是绑定的返回数据显示 id,这都是必须的. 

 
ajax 使用不是必须的,但是有时候不得不用,如果使用原生态的,我想加载还是很快

,mootools 库笔者也没有用过,只是照猫画虎,这里毕竟是提供了一种实现 ajax 的方法,怎么

实现

POST 方法呢,只需要添加相应表单元素即可.在这里笔者就不多说了,因为用的不是很

.好了,就讲到这里,就不提供例子了,如果你需要可以在遇到编辑表单元素时候试试代码什

么的都很短

,

copy

一下就好了

!