有什么方法可以放置一个触发器来在 CodeIgniter 的控制器函数中切换引导模式


Is there any way I can put a trigger to toggle Bootstrap modal inside a controller function in CodeIgniter?

我想创建一个模块,学生必须提供他/她的学生证、PIN 和电子邮件来验证他/她的帐户。如果用户输入了正确的 ID、PIN 和电子邮件,则必须显示设置他/她的密码的模式。

视图

<form method="post" action="<?php echo site_url('mycontroller/validateStud');?>" name="formvalidate">
  <div class="form-group">
    <input type="text" class="form-control" name="idnum" placeholder="ID Number"/>
    <br>
    <input type="email" class="form-control" name="mail" placeholder="Student Email"/>
    <br>
    <input type="password" class="form-control" name="pin" placeholder="Student PIN"/>
    <br>
    <button type="submit" class="btn btn-primary" style="width: 100%;" onclick="" name="submit2" value="<?php echo $this->uri->uri_string(); ?>" id="validated">Validate</button>
  </div>
 </form>
 <div id="myModal" class="modal fade" role="dialog">
   <div class="modal-dialog">
   <div class="modal-content">
   <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal">&times;</button>
    <h4 class="modal-title">Modal Header</h4>
   </div>
   <div class="modal-body">
    <p>Some text in the modal.</p>
   </div>
  <div class="modal-footer">
    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
  </div>
</div>

控制器

我的控制器.php

public function validateStud()
{
  $submit=$this->input->post('submit2');
  $studentId=$this->input->post('idnum');
  $saispin=$this->input->post('pin');
  $mail=$this->input->post('mail');
  $res=$this->mymodel->checkValidation($studentId, $pin, $mail);
  if (isset($_POST['submit2']) && $res) { //if the three inputs matched with a student record
   //Open MyModal that will set account password
  }
  else if(isset($_POST['submit2']) && !$res)
  {
    //No record found
  }
  else
  {
    redirect('index', true);
  }
}

我尝试过javascript,但我失败了。请开导我。任何帮助将不胜感激。:)

最好使用 ajax 将值发布到服务器,以便您可以在成功回调中触发模式打开。这样,如果失败,您还可以触发它以使用其他消息打开。它会更干净。

$.ajax({
    url: '',
    type: '',
    data: {},
    success: function(){},
    error: function(){}
});

像这样的东西。查看 jQuery 文档以获取更多信息