Codeigniter JavaScript成功消息问题

时间:2015-08-25 11:33:29

标签: jquery codeigniter

当我插入或编辑表单时,显示成功消息。这是我正在显示的视图页面中的INSERTED SUCCESS或UPDATED SUCCESS。

表单视图页面我正在移动编辑页面,如果单击取消按钮,则在编辑页面中我重定向到查看页面时间相同的消息INSERTED SUCCESS或UPDATED SUCCESS消息显示。

如何避免这种情况,一旦我显示成功消息,就不应再来了。

 if (confirmed)
    {

    $.ajax({ 
        type:'POST',
        url:"<?=site_url('ProcCtr/PurchaseQuotation_Delete')?>",
        data:{'id':a},
        success:function(response){
        if(response==1){
            $('#errorStatus').hide();                           
            $('#alert').append('<div class="alert alert-success"><a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a><strong>Success!</strong> A Record is Deleted Successfully.</div>');
        }else{
            $('#errorStatus').show();
            $('#alert').append('<div class="alert alert-danger "><a href="#" class="close" data-dismiss="alert" aria-label="close" title="close">&times;</a><strong>Failure!</strong> A Record is Unable To Delete</div>');
        }
        $('#dataRespTable').dataTable().fnDraw();
        setTimeout(function(){ $('#alert').empty(); }, 8000);
                    }
                    });


                // window.location.href = link;     
            }

2 个答案:

答案 0 :(得分:0)

控制器:

<?php
class brand extends CI_Controller{
     function __construct() {
        parent::__construct();
        session_start();
    }

    function index()
    {
        $this->load->view('header');
        $this->load->view('brand');
        $this->load->view('footer');
    }

    function ajax_submit()
    {
        $username = $_POST['username'];
        $password = $_POST['password'];
        /*--- here goes your database update or edit script*/
        if(//database update successful)
        {
           echo "Update Successful";
        }
        else
        {
           echo "Update Failed";
        }
   }

}

现在在brand.php视图文件中:

<script type="text/javascript">
$(document).ready(function()
{
   $("#sub_but").click(function()
   {
     var username = $("#username").val();
     var password = $("#password").val();
     $.post("<?php echo base_url();?>branch/ajax_submit",
            {
             'username':username,
             'password':password
            },
            function(data)
            {
                console.log(data);
            }
   });
});
</script>

<form name="submit_form" action="" method="post">
   <input name="username" id="username" value=""/>
   <input name="password" id="password" value=""/>
   <input type="button" value="Submit" name="sub_but" id="sub_but"/>
</form>

检查一件事,虽然我使用的是表单,但我没有使用提交按钮。 因此表单实际上没有提交。按钮单击事件调用$ .post方法进行ajax调用。

答案 1 :(得分:0)

我找到了解决方案。

这是因为一旦警告消息显示在自动隐藏或我自己之前取消警报消息我点击添加或编辑页面按钮。

因此它在视图页面中保持不变,一旦超时闪光警报时间它就不会再来了。

谢谢。