如何控制CakePHP表单中错误消息div的显示位置?
发布时间:2020-12-13 17:18:57 所属栏目:PHP教程 来源:网络整理
导读:所以我理解,如果您根据Model的验证器验证错误消息,Cake PHP会自动将错误消息加载到视图中.我正在尝试设置日期保管箱验证,我想控制错误消息显示的位置. 在提交验证表格之前: div class="input text required"label for="UserEmail"Email/labelinput name="da
所以我理解,如果您根据Model的验证器验证错误消息,Cake
PHP会自动将错误消息加载到视图中.我正在尝试设置日期保管箱验证,我想控制错误消息显示的位置.
在提交验证表格之前: <div class="input text required"> <label for="UserEmail">Email</label> <input name="data[User][email]" maxlength="50" type="text" id="UserEmail"> </div> 验证后,错误显示在此处: <div class="input text required error"> <label for="UserEmail">Email</label> <input name="data[User][email]" maxlength="50" type="text" value="" id="UserEmail" class="form-error"> <div class="error-message">An email is required</div> </div> 有可能控制它,我可以把它显示在这里吗? <div class="input text required error"> <div class="error-message">An email is required</div> <label for="UserEmail">Email</label> <input name="data[User][email]" maxlength="50" type="text" value="" id="UserEmail" class="form-error"> </div> 或者在这里: <div class="error-message">An email is required</div> <div class="input text required error"> <label for="UserEmail">Email</label> <input name="data[User][email]" maxlength="50" type="text" value="" id="UserEmail" class="form-error"> </div> 解决方法
在视图中:
1)禁用自动错误显示: echo $this->Form->create('Mymodel',array( 'inputDefaults' => array( 'error' => false ) )); 2)从$this-> validationErrors获取当前表单错误 3)通过$this->Form->error()将您自己的标记或Cake的默认标记显示在您喜欢的位置 更新: echo $this->Form->create('Mymodel',array( 'inputDefaults' => array( 'format' => array('before','error','label','between','input','after') ) )); 以上将在标签div之前放置错误div.您可以按照自己喜欢的顺序重新排列该数组. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |