javascript - 单击确定后如何进行SweetAlert自动重定向? (Codeigniter)

标签 javascript php codeigniter sweetalert

我对sweetalert有问题。我在确认表单中使用sweetalert。但是会弹出sweetalert,显示在用户提交表单之后,然后在用户单击“确定”之前在sweetalert中弹出。页面自动重定向到下一页。

我想在用户单击“确定”后重定向到下一页,或者我想在我的sweetalert中添加代码controller。因为流程在controller中提交表单。

我正在使用Codeigniter框架bootstrap

这是我的代码:

查看页面。

<?php echo form_open_multipart('substrans');?>
<html lang="en">
    <div class="container">
        <div class="row">
            <div class="col-md-12">
<div id="notifications"></div>

                <div class="form-group" id="loading">
                    <label for="name" class="col-sm-3 control-label">Name:</label>
                    <div class="col-sm-12">
                        <input type="text" class="form-control" id="iname" name="iname" required >
                    </div>
                </div>
                <div class="form-group">
                    <label class="control-label col-sm-3" for="email">E-Mail:</label>
                    <div class="col-sm-12">
                        <input type="email" class="form-control" id="imail" name="imail" required>
                    </div>
                </div>
                <div class="form-group">
                    <label class="control-label col-sm-3" for="code">Code</label>
                    <div class="col-sm-12">
                        <input type="text" class="form-control" id="icode" name="icode" required>
                    </div>
                </div>
                <div class="col-lg-12">

                <center>
                    <button type="submit" class="btn btn-primary" name="submit" onclick="proccess()">Submit</button>
                </center>
                <br>
                </div>              
                <br>
            <div class="col-md-3">
            </div>
        </div>
      </div>
    </div>

      <!-- Bootstrap core JavaScript -->
    <script type="text/javascript">
        function proccess()
        {
            var inName = document.getElementById('iname').value;
            var inmail = document.getElementById('imail').value;
            var inCode = document.getElementById('icode').value;            

            if(inName !='' && inmail !='' && inCode !='') {
                swal("Thanks!", "Success submit.", "success");
            }
            else {
                swal("Oops!", "Sorry you failed submit!", "error");
            }
        }
    </script>
    <script>   
    $('#notifications').slideDown('slow').delay(3000).slideUp('slow');
    </script>   
    <script src="assets/sweetalert/sweetalert.css"></script>
    <script src="assets/sweetalert/sweetalert.min.js"></script>

  </body>

</html>


控制器。

public function substrans(){

        $iname = $_POST['iname'];
        $imail = $_POST['imail'];
        $icode = $_POST['icode'];


        if( $iname !='' && $imail !='' && $icode !=''){

            $this->load->library('email');
            $config['protocol'] = 'smtp'; 

            $config['smtp_host'] = '127.0.0.1';
            $config['smtp_port'] = 'xx';
            $config['charset'] = 'iso-xxxx-1';
            $config['mailtype'] = 'html';
            $config['wordwrap'] = TRUE;
            $this->email->initialize($config);


            $mail_message = " 
            Name: $iname <br/>
            Email: $imail <br/>
            Code: $icode <br/>
            ";
            $this->email->from('xx@xx.xx', 'xxxxxxx');
            $this->email->to('xx@xx.xx');
            $this->email->attach($attched_file);
            $this->email->subject('Confirm');
            $this->email->message($mail_message);
            $this->email->send();

            echo "<script>window.history.go(-2);</script>";

        }
        else {
            echo "<script>
            window.history.go(-1);</script>";
        }

    }

最佳答案

问题是“提交”事件的默认行为。
我认为您应该更改“流程”功能并使用js preventDefault:

function proccess(event){
  event.preventDefault() 
 .... rest of code
}

关于javascript - 单击确定后如何进行SweetAlert自动重定向? (Codeigniter),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57800075/

相关文章:

javascript - JSX 中的一组对象

javascript - React-native-router-flux 场景多次渲染

c# - 如何从 C# 代码调用 javascript?

javascript - 使用jquery在javascript变量中复制html div

javascript - 循环遍历 MVCArray 以将纬度和经度保存在数据库中

php - 如何使用 php 在 facebook 中保存用户的个人资料图片

php、ajax、html 选择元素

php - 如何在codeigniter中更新数据库

php - 使用 CodeIgniter get_where 链接 'and' 和 'or' 语句

PHP - Codeigniter 专业架构