codeigniter - Codeigniter 表单验证在模式下不起作用
问题描述
我有控制器和视图模式,我在点击按钮时验证控制器中的数据,错误应该出现在视图中。表单在未验证必填字段的情况下提交。代码如下:
控制器:
class task extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->library('session');$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
$this->load->helper('security');}
public function task_display()
{
if($this->input->post('add'))
{
$this->form_validation->set_rules('code','TaskCode','required | integer');
if($this->form_validation->run() == TRUE) {
$tname=$this->input->post('name');
$tcode=$this->input->post('code');
$tcategory=$this->input->post('category');
$this->task_model->add_task($tname,$tcode,$tcategory);
}
}
}
视图:(模态)
<div id="addmodal" class="modal fade bs-example-modal-lg" tabindex="-1" role="dialog" aria-hidden="true" >
<div class="modal-dialog modal-lg">
//content
//header
//title
//body
<?php echo validation_errors(); ?>
<form class="form-horizontal form-label-left input_mask " method="post" id="addmodalform">
<div class="form-group">
<label class="control-label">Task Code<span class="required">*</span></label>
<div class="col-md-9 col-sm-9 col-xs-12">
<input name="task_code" id="task_code" type="text" class="form-control" placeholder="Task Code" required="required">
</div>
</div>
//closing div
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<input type="hidden" name="addtask_hidden" id="addtask_hidden" value="">
<button type = "button" id="addnew" class = "btn btn-primary" >Add</button>
</div>
这是ajax代码:
$(document).on('click', '#addnew', function(){
{
var addtask_hide=document.getElementById('addtask_hidden').value;
if(addtask_hide==1)
{
$('#addmodal').modal('hide');
$('body').removeClass('modal-open');
$('.modal-backdrop').remove();
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>" + "index.php/task/task_display",
data: {
add: 1,
},
success: function(){
console.log("success");
}
});
}
});
我已经加载了所需的库并相应地设置了规则,即使点击按钮,表单也没有得到验证。我将如何使它工作?
解决方案
推荐阅读
- arduino - 适用于 ESP32 的 Max TX power 经典蓝牙
- google-cloud-platform - 谷歌云上用于 pihole 的 Icmp ping 和 dns 端口不起作用
- sql - SQL Count 和 distinct count(*) 通过对两列进行分组
- reactjs - 如何在reactjs中将数组显示为Jsx元素
- javascript - 为什么我在反应中得到第一个响应是一个空数组?
- google-cloud-platform - 验证 Google Cloud Platform 服务使用配额
- woocommerce - Woocommerce:创建变体 - 默认情况下检查管理库存
- visual-studio-code - 在 vscode 中调试静态网站的最简单方法是什么?
- javascript - 具有待定义属性的对象
- kubernetes - 无法查看 Pods CPU 和内存利用率,并且缺少图表 Kubernetes 仪表板