我正在尝试为set_rule....is设置验证消息这是可能的吗?
我试过了
$this->form_validation->set_rules('payment_amount', 'Payment Amount', 'regex_match[/^\d{0,4}(\.\d{1,2})?$/]');
$this->form_validation->set_message('payment_amount', 'This is a test');我的信息并没有改变。
有什么想法吗?
发布于 2013-01-19 06:30:01
您可以通过为规则创建函数来设置自定义验证错误消息。
这段代码是未经测试的。
public function payment_amount($str)
{
if (preg_match('[/^\d{0,4}(\.\d{1,2})?$/]', $str)
{
$this->form_validation->set_message('payment_amount', 'The %s field has an error');
return FALSE;
}
else
{
return TRUE;
}
}我们CI的回调如下:
$this->form_validation->set_rules('payment_amount', 'Payment Amount', 'callback_payment_amount')发布于 2013-01-19 08:30:53
创建MY_Form_validation.php并将您的代码放入。
使用文档(http://ellislab.com/codeigniter/user-guide/general/creating_libraries.html)
扩展本地库
如果你所需要做的就是向现有的库中添加一些功能--也许添加一两个函数--那么用你的版本替换整个库就太夸张了。在这种情况下,更好的方法是简单地扩展类。扩展一个类几乎等同于用几个异常替换一个类:
类声明必须扩展父类。您的新类名和文件名必须以MY_作为前缀(此项是可配置的。见下文。)。例如,要扩展原生电子邮件类,您将创建一个名为application/libraries/MY_Email.php的文件,并使用以下命令声明您的类:
class MY_Email extends CI_Email {
}注意:如果您需要在类中使用构造函数,请确保扩展了父构造函数:
class MY_Email extends CI_Email {
public function __construct()
{
parent::__construct();
}
}https://stackoverflow.com/questions/14408658
复制相似问题