利用joomla内置的表单验证功能

Joomla有自己的表单验证功能,可以很方便地实现验证,没有通过验证的输入框在提交报错后会用红色边框表示,很清楚地知道漏了那几项没填。

 

以下说一下使用方法:

 

在要使用表单功能的页面的最上面输入如下代码

1
JHTML::_('behavior.formvalidation');

然后把如下脚本加入页面上

1
2
3
4
5
6
7
8
9
10
11
12
<script type="text/javascript">
function formValidate(f) {
        if (document.formvalidator.isValid(f)) {
                f.check.value='<?php echo JUtility::getToken(); ?>';//send token
                return true;
        }
        else {
                alert('Some values are not acceptable.  Please retry.');
        }
        return false;
}
</script>

在form的位置修改代码

1
<form ...  onsubmit="return formValidate(this)">

添加了以上代码之后,在form中的input只要加入class="required",验证功能就会生效。

joomla的验证脚本都用class实现,class的名称决定使用什么验证方法。

最常用的class="required"意思为必填项

class="validate-email"意思为验证邮件地址

 

验证方法可以复合使用,比如我要Email为必须,符合格式才可以提交,可以这样写:

class="validate-email required"

定制验证方法:

Joomla验证功能支持定制,可以设置不常用的验证规则。

比如我要做一个密码项加一个确认密码项,两个输入框的值相等才可以提交,可以添加如下脚本

1
2
3
document.formvalidator.setHandler('passverify', function (value) { return ($('password').value == value); });
 
<input type="password" value="" class="validate-passverify" />
欢迎加入Joomla...