我正在使用codeigniter建立一个CRUD系统。
用户选择一个项目,并从数据库中查询其详细信息,并填写表单字段。
然后,用户可以决定是否要更新该项目,或者复制该项目并创建新项目。
我希望重复发生如下: 单击 Duplicate 按钮后,项目代码的值将被清除(因为项目代码是唯一的,并且是用户生成的),并且 Duplicate 的值按钮将更改为创建新项。然后,用户应键入新的商品代码,然后单击创建新商品按钮。
使用Javascript可以轻松实现上述目标。
然后提交表单,并使用CI的form_validation库进行验证。
如果验证失败,我正在重新加载表单,显示错误消息。
同样,使用CI的form_validation可以轻松实现该部分。
我的问题在于: 使用错误消息重新加载失败的表单后,我希望重复按钮的值保持创建新项,而不是重置为初始重复< / em> value。
如何在将错误消息返回到表单后设置按钮的值?
答案 0 :(得分:1)
一种方法是发送一些变量,该变量充当标志以确定验证是成功还是失败。
例如:
//来自控制器
if ($this->form_validation->run() == FALSE)
{
$data['form_validated'] = FALSE;
$this->load->view('myform',$data);
}
else
{
$data['form_validated'] = TRUE;
$this->load->view('myform',$data);
}
//在视图中
if($form_validated) {
//code if form is validated
}
else {
//code if form is not validated
}
首次加载页面时,最初设置$ form_validated = TRUE。
希望这有帮助。
您甚至可以使用会话来存储有关表单是否已经过验证的数据