繁体   English   中英

如何使用Codeigniter根据传递的ID在Bootstrap模式下加载视图?

[英]How to load a view in Bootstrap modal according to passed ID using Codeigniter?

我有一个列表产品的类别,想要编辑。

当我单击特定类别的编辑按钮时,打开Bootstrap模式以单击ID以更新内容。

弹出窗口来了,但是视图没有加载。

数据清单:

<?php if (is_array($category_list)) {
    foreach ($category_list as $item): ?>
          <tr>
            <td>
              <?=$item->category_name?></td>
            <td>
              <a href="#" class="btn btn-small z-depth-0" data-toggle="modal" data-target="#categoryModal" id="category_modal" data-id="<?=$item->cat_id?>" data-url="<?php $this->config->base_url();?>admin_panel/get_category/<?=$item->cat_id?>">
                <i class="mdi mdi-editor-mode-edit"></i>
              </a>
            </td>
          </tr>
          <?php endforeach;}
?>

Javascript功能:

<script type="text/javascript">
   $(document).on("click", "#category_modal", function () {
    var url = $(this).data('url');
    alert(url);
    jQuery.ajax({
      url: url,
      success: function(response)
      {
              alert(response);
            jQuery('#categoryModal .modal-content').html(response);
            jQuery('#categoryModal').modal('show', {
            });
          }
        });
  });
</script>

控制器功能:

public function get_category() {
        $cat_id = $this->uri->segment(3);
        $data['category'] = $this->admin_model->get_category($cat_id);
        $this->load->view('backend/category_popup', $data);
    }

category_popup.php视图:

<?php 
if (is_array($category)) {
    foreach ($category as $item) {
        $cat_id = $item->cat_id;
        $cat_name = $item->category_name;
    }
} else {
    $cat_id = '';
    $cat_name = '';
}

?>
<form action="#" method="post" name="form" style="margin-top: -200px;width: 100%;height: 100%" class="z-depth-4">
<div class="card-panel">
<div class="card-panel cyan lighten-3">
<h4 style="text-align: center">Update Category - <strong><?=$cat_name?></strong></h4>
  </div>
  <div class="row">

    <div class="col l6 s12">
    <label for="subcat_name">Category Name</label>
      <div class="input-field">
        <input id="cat_names" name="cat_name" type="text" class="validate" value="<?=$cat_name?>">
      </div>
    </div>
  </div>
  <div class="row">
    <div class="col l4 s12">
      <button class="btn" type="button" name="action" onclick="update_cat()">Update</button>
    </div>
  </div>
</div>

</form>

附加到ajax的数据属性:

$('#category_modal').on('show.bs.modal', function(e) {
    var url = $(this).data('url');
    alert(url);
    jQuery.ajax({
       url: url,
       data:{data_id:$(this).attr('data_id')}, 
       success: function(response)
       {
              alert(response);
            jQuery('#categoryModal .modal-content').html(response);

          }
        });
  });

和您的控制器更改:

$cat_id = $this->input->get('data_id');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM