PHP:我能';t在使用ajax将数据插入表单后重定向到主表

PHP:我能';t在使用ajax将数据插入表单后重定向到主表,php,ajax,codeigniter,Php,Ajax,Codeigniter,这是打开多重插入表单时的脚本: <script src="<?= base_url('assets/'); ?>vendor/jquery/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ var i =1; $('#add').click(function

这是打开多重插入表单时的脚本:

<script src="<?= base_url('assets/'); ?>vendor/jquery/jquery.min.js"></script>
<script type="text/javascript">
   $(document).ready(function(){
      var i =1;
      $('#add').click(function(){
        i++;

        $('#dynamic_field').append('<tr id="row'+i+'"> <td><select name="bhn_id[]" id="bhn_id" placeholder="enter name" class="form-control form-control-sm bhn_id"><option value="">-- Pilih Bahan --</option><?php foreach ($data_bahan->result_array() as $key => $tb_bahan) : ?>
                            <option <?= set_select('bhn_id', $tb_bahan['id_bhn']) ?> value="<?=$tb_bahan['id_bhn'] ?>"><?= $tb_bahan['nm_bhn'] ?></option><?php endforeach; ?>
                              <?= form_error('bhn_id', '<small class="text-danger">', '</small>'); ?>
                          </select><?= form_error('bhn_id', '<small class="text-danger">', '</small>'); ?></td><td width="100"><input type="number" class="form-control form-control-sm jlh_keluar"  name="jlh_keluar[]" id="jlh_keluar" value="<?= set_value('jlh_keluar'); ?>"></td><td align="center" width="100"><button type="button" name="remove" id="'+i+'" class="btn btn-outline-danger btn-sm btn_remove">x</button></td></tr>');
        });
    $(document).on('click', '.btn_remove', function(){
      var button_id = $(this).attr("id");
      $("#row"+button_id+"").remove();
      });

    $('#submit').click(function(){
      $.ajax({
        url:"<?= base_url('m_form_bahan_keluar/tambah_bahan');?>",
        method:"POST",
        data:$('#add_jenis').serialize()
        // success:function(data)
        // {
        //   $('#add_jenis')[0].reset("");

        // }
      });
    });

   });
</script>

您似乎在从ajax端点调用重定向。ajax调用是一个单独的http请求,在它上面发生的事情,例如重定向,不会影响从浏览器到服务器的初始连接

您需要将重定向合并到javascript/jquery调用中,而不是在ajax端点中使用php重定向。您可以使用“完成”来完成此操作

$.ajax({
        url:"<?= base_url('m_form_bahan_keluar/tambah_bahan');?>",
        method:"POST",
        data:$('#add_jenis').serialize()
      }).done(function( msg ) {
    redirect('M_bahan_keluar/index')
  });
$.ajax({
url:“”,
方法:“张贴”,
数据:$('#add_jenis')。序列化()
}).done(函数(msg){
重定向('M_bahan_keluar/index')
});
“完成”回调将在

中讨论,您可以在代码之后设置 最后,使用以下命令将页面重定向到自定义地址:

window.location=“您的自定义地址”;

我们不能在这里使用
success:function(msg){…}
吗?谢谢各位的回复。我已经解决了问题:)警告:您完全可以使用参数化的预处理语句,而不是手动生成查询。它们由或提供。永远不要相信任何形式的输入!即使您的查询仅由受信任的用户执行。
$.ajax({
        url:"<?= base_url('m_form_bahan_keluar/tambah_bahan');?>",
        method:"POST",
        data:$('#add_jenis').serialize()
      }).done(function( msg ) {
    redirect('M_bahan_keluar/index')
  });