簡體   English   中英

AJAX Codeigniter 獲取模態數據

[英]AJAX Codeigniter getting data for modal

我已經使用 CodeIgniter 一段時間了,我正在嘗試讓一個模態工作。 我正在使用引導程序庫,因此模型本身很容易顯示。 問題是我正在嘗試使用 ajax 從數據庫中加載動態信息。 但我似乎無法觸發它。 我的腳本沒有做任何事情,我已經嘗試了很長時間了。

 function fun(control){
   $.ajax({
        url:'<?=base_url()?>admin/proveedores/userDetails/'+control.id,
        method: 'post',
        data: {uid: control.id},
        dataType: 'json',
        success: function(response){
         var len = response.length;

         if(len > 0){
          // Read values
          var uname = response[0].razon_social;
          var name = response[0].cuit;
          var email = response[0].rubro;

          $('#suname').text(uname);
          $('#sname').text(name);
          $('#semail').text(email);
 }
</script>

HTML 部分

<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">
          <div >
            Username : <span id='suname'></span><br/>
            Name : <span id='sname'></span><br/>
            Email : <span id='semail'></span><br/>
           </div>
        </div>
        <div class="modal-footer">
          <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        </div>
      </div>

    </div>
  </div>

函數調用

<tr id="<?= $e['id'] ?>" onclick="fun(this)" data-toggle="modal" data-target="#myModal" >

控制器

public function userDetails($cid){
        // POST data
        //  $postData = $this->input->post();

          // get data
          $data = $this->model_proveedores->get($cid);

          echo json_encode($data);
    }

我認為它會對你有所幫助。 請將模態內容保留在 id 為myModal的 div 中,並在模態顯示操作中調用 ajax。

模態

<div id="myModal" class="modal fade" role="dialog">
    <div class="modal-dialog" role="document">
        // your modal content
    </div>
</div>

呼叫按鈕

  <tr data-id="<?= $e['id'] ?>" data-toggle="modal" data-target="#myModal">

劇本

var modal = $("#myModal");
modal.on('show.bs.modal', function (event) {
    var button = $(event.relatedTarget);
    var id      = button.data('id'); 

    $.ajax({
        url      : '<?= base_url() ?>admin/proveedores/userDetails/'+id,
        type     : 'post',
        dataType : 'json',
        data     : { uid: id},
        success  : function(response)
        {
            var len = response.length;

            if(len > 0){
                // Read values
                var uname = response[0].razon_social;
                var name = response[0].cuit;
                var email = response[0].rubro;

                $('#suname').text(uname);
                $('#sname').text(name);
                $('#semail').text(email);
            }
        },
        error    : function(xhr)
        {
            console.log(xhr)
        }
    });
});

您的響應是 JSON 編碼的。 在將其用作對象之前,您必須對其進行解碼。

response=JSON.parse(response);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM