2017-09-11 5 views
1

をオートフィルを作成することができます助けを必要と、私はすでに閲覧していないが、何も進行中の成功がどのようにAJAXとCodeIgniterの3にオートフィルフォームフィールドの作成を支援するために、誰コードイグナイタに

コントローラ:

function autofill(){ 
     $id_pemesan = $this->input->post('id_pemesan', TRUE); 
     $this->mod_marketing->autofill_by_id($id_pemesan,'pemesan'); 



      $data = array(
      'nama_depan' => nama_depan, 
      'nama_belakang' => nama_belakang, 
      'alamat' => alamat, 
      'provinsi_kota' => provinsi_kota, 
      'kode_pos' => kode_pos, 
      'email' => email, 
      'no_telp' => no_telp 
      ); 

     echo json_encode($data); 
    } 

モデル:

function autofill_by_id($id_pemesan,$table){ 

     return $this->db->get_where($table,array('id_pemesan', $id_pemesan)); 
    } 

スクリプト:

<script> 
$(function() { 
     $("#id_pemesan").change(function(){ 
      var id_pemesan = $("#id_pemesan").val(); 

      $.ajax({ 
       url: '<?php echo site_url('marketing/autofill'); ?>', 
       type: 'POST', 
       dataType: 'json', 
       data: { 
        'id_pemesan': id_pemesan 
       }, 
       success: function (pemesan) { 
        $("#nama_depan").val(pemesan.nama_depan); 
        $("#nama_belakang").val(pemesan.nama_belakang); 
        $("#alamat").val(pemesan.alamat); 
        $("#provinsi_kota").val(pemesan.provinsi_kota); 
        $("#kode_pos").val(pemesan.kode_pos); 
        $("#email").val(pemesan.email); 
        $("#no_telp").val(pemesan.no_telp); 

       } 
      }); 
     }); 
    }); 

その私の最新の試みと応答がデータ、またはエラーを含むべきである場合、それはチェックして、そのまだ

+0

これまでのエラーは何ですか?何が問題なの? – smzapp

答えて

0

変更コントローラを失敗。

function autofill() 
{ 
    $id_pemesan = $this->input->post('id_pemesan', TRUE); 
    $row = $this->mod_marketing->autofill_by_id($id_pemesan,'pemesan'); 

    if($row) 
    { 
     $data = array(
      'nama_depan' => $row->nama_depan, 
      'nama_belakang' => $row->nama_belakang, 
      'alamat'  => $row->alamat, 
      'provinsi_kota' => $row->provinsi_kota, 
      'kode_pos'  => $row->kode_pos, 
      'email'   => $row->email, 
      'no_telp'  => $row->no_telp 
     ); 

     echo json_encode($data); 
    } 

    // No rows, or there was more than one row 
    else 
    { 
     echo json_encode(array('error' => 'No rows, or there was more than one row')); 
    } 
} 

変更行をチェックするためのモデル::あなたができるよう

function autofill_by_id($id_pemesan, $table) 
{ 
    $query = $this->db->get_where($table,array('id_pemesan', $id_pemesan)); 

    return $query->num_rows() == 1 
     ? $query->row() 
     : NULL; 
} 

変更JSを、これはあなたが望んでいるあなたは、実際には配列に行を渡していなかったので、私は推測していますエラーを確認してください:

$(function() { 
    $("#id_pemesan").change(function(){ 
     var id_pemesan = $("#id_pemesan").val(); 

     $.ajax({ 
      url: '<?php echo site_url('marketing/autofill'); ?>', 
      type: 'POST', 
      dataType: 'json', 
      data: { 
       'id_pemesan': id_pemesan 
      }, 
      success: function (pemesan) { 
       if(permesan.error){ 
        alert(permesan.error); 
       }else{ 
        $("#nama_depan").val(pemesan.nama_depan); 
        $("#nama_belakang").val(pemesan.nama_belakang); 
        $("#alamat").val(pemesan.alamat); 
        $("#provinsi_kota").val(pemesan.provinsi_kota); 
        $("#kode_pos").val(pemesan.kode_pos); 
        $("#email").val(pemesan.email); 
        $("#no_telp").val(pemesan.no_telp); 
       } 
      }, 
      error: function(){ 
       alert('error 2'); 
      } 
     }); 
    }); 
}); 
+0

私はあなたのコードを試して、まだ空白と "行がない、または複数の行があった"またはjqueryの使用しているバージョン - 私は使用しています?私はjquery-uiを使用する1.11.4 – goddelose

+0

応答を破損している何かがあります。ブラウザのコンソールの[Net]パネルに移動し、サーバーからの生の応答を確認する必要があります。 –

関連する問題