background image

 
<form action="index.php" method="post" name="adminForm"> 
<fieldset 

class

="adminform"><legend>详情</legend> 

<?php 

echo

 

$this

->html; 

?> 
<?php 

echo

 JHTML::_( 'form.token' ); ?> 

</fieldset> 
</form> 
 
这样一个表单就生成了

,相对于直接写表单元素,这种方法更容易修改风格或者内容,修改只

需要改

xml 文件即可,在 joomla2.5 版本中,基本上都是通过这种方式实现的,不过变化比较

,xml 文件写法大不相同,通过 xml 是可以调用其他组件里面表单元素的. 

 
表单元素的这些类型在模版配置参数

,模块参数都是可以使用的,特别是可以自己扩展表单元

素的样式

,你完全可以定义出其他样式类型,笔者定义了比较常用的几种但是内置没有提供的,

比如数组转换列表

,数组转换复选,无限分类等样式.这里的类型其实就是 api 的 JElement 类,

里面的源文件可以参考

libraries\joomla\html\parameter\element,这里自定义表单元素怎么写

呢这里给个例子或者参考源文件就明白了

,文件名 custom.php,类型也就是 custom 了,调用方

<param name='custom' type='custom' label='自定义' /> 

代码如下

:

 
<?php 

// 自定义显示 
// 

defined('_JEXEC') 

or

 

die

('Restricted access'); 

 

class

 JElementCustom 

extends

 JElement{ 

var

 

$_name

 = 'Custom'; 

function

 fetchElement(

$name

$value

, &

$node

$control_name

) { 

$html

=<<<EOF 

自定义

 

EOF; 

return

 

$html



 
好了

,就不多讲了,其实这只是一种建立表单的方法,如果你不喜欢,完全可以使用写表单元素,

不过既然

joomla 提供了这些我们为什么不用呢?