0

私はこの状況にあり、

//見る

 $.ajax({type: 'POST',
    url: base_url+"home/display_info/"+patient_id,
    async: false,
    success: function(data){
            //alert(data);// alert was working
            }
    });

//コントローラ

function display_info($id)
    {
        $document= $this->document_model->getDocumentOfPatient($id);
        print_r($document);
    }

これで、コントローラーから配列としてデータを取得しています。データをphp配列変数に取得して、その配列でテーブル(html)を作成したいのですが、ここで立ち往生しています。テーブルを設定する方法はありますか( html) この返されたデータ変数を使用<?php echo $document['document_id'];?>して、ビューでこのような変数にアクセスできますか?

4

4 に答える 4

2

これを試して

まず、ビュー ページにテーブルを作成します。テーブル ID の名前は foo で、テーブル行の作成とappendhtml テーブルへの使用に使用されます

サンプルコードを以下に示します

    <scrit type="text/javascript">
     $.ajax({type: 'POST',
        url: base_url+"home/display_info/"+patient_id,
        async: false,
        success: function(data){
              var table = '<tr><td>' + data['patient_id'] + '</td><td>' + data['document_id'] + '</td><td>' + data['document_date'] + '</td><td>'+ data['insert_user_id']+  '</td></tr>';

        $('#poo > tbody').append(table);
                }
        });


    </script>
    <table id="poo" style="margin:10px 0px 0px 0px;" width="100%" border="0" cellpadding="0" cellspacing="0">
        <thead>
            <tr>
                <td><strong>Product id</strong></td>
                <td><strong>Doc id</strong></td>
                <td><strong>Date</strong></td>
                <td><strong>userid</strong></td>
            </tr>
        </thead>
<tbody>
</tbody>   
    </table>
于 2013-08-20T12:54:37.027 に答える
1

PHPはサーバーサイド言語です。ビューで PHP データを使用する場合は、Javascript などのクライアント側言語に変換する必要があります。たとえば、display_infoコントローラーで JSON を返し、PHP を使用json_encodeして、ビューに役立つデータで構成された PHP 配列を変換できます。application/jsoncontent-type ヘッダーを付けて出力します。

于 2013-08-20T12:11:31.727 に答える
0

この種の状況では、コントローラー自体でテーブルを作成し、それを変数に割り当てていました。そのため、View でそのテーブルを AJAX 応答として取得できます。次に、表示が必要なリソース ID の内部 HTML に応答を割り当てるのは非常に簡単です。

于 2013-08-20T12:15:10.480 に答える
0

データは正しいですか?

var obj = jQuery.parseJSON(data);

の形式で JSON を使用します。正しく理解していただければ幸いです

于 2013-08-20T12:24:04.777 に答える