我正在尝试为 Joomla 3.4 中的文本表单字段添加服务器端验证。当我提交带有任何空字段消息的表单时,会出现该字段为空的消息,但是当它不为空时,提交正在工作并忽略电子邮件和我自己的验证。电子邮件验证也仅在我设置 type="email" 而不是 type="text" 时有效。这就是我所拥有的:
\components\com_my\models\rules\myrule.xml
<?php
defined('_JEXEC') or die;
jimport('joomla.form.formrule');
class JFormRuleMyrule extends JFormRule
{
public function test(SimpleXMLElement $element, $value, $group = null, JRegistry $input = null, JForm $form = null)
{
return false;
}
}
\components\com_my\models\forms\form.xml
<form>
<fieldset name="default" addrulepath="/components/com_my/models/rules" label="My form">
<field
name="user"
type="text"
label="Label"
message="Message"
required="true"
size="10"
maxsize="10"
validate="myrule"
/>
<field
name="mail"
type="text"
label="Label"
message="Message"
required="true"
validate="email"
/>
</fieldset>
</form>
很高兴得到任何帮助!谢谢!