1

カーソルをリンクに合わせたときにdbからの動的データを使用してポップアップツールチップを作成したいのですが、何か間違っています。コードを修正してください。

私の見解

    <script type="text/javascript">
        $(document).ready(function() {
            $('.tip').tooltip();
        });
    </script>
    <script type="text/javascript" language="javascript">
        jQuery(document).ready(function(){
       $('#something').mouseover(function(){
        $.ajax({
         url: "<?=base_url();?>aircraft/tip",
         type: 'POST',
         data: {
          'id': $(this).attr("rel"),
         },
         dataType: 'json',
         success: function(aircraft_j) {
                  $('#something').attr('data-original-title',aircraft_j);  
              }
        });
        return false;
       });
      });
      </script>

    <a href="#" data-toggle="tooltip" data-placement="right" id="something" title="" 
data-original-title="" rel="1" class="tip">aircraft</a>

私のコントローラー

 function tip() {
    $this->output->enable_profiler(false);
    if($this->input->server('HTTP_X_REQUESTED_WITH') != 'XMLHttpRequest'){ echo "fail. try something else"; return; }
    $this->load->model('aircraft_model');
    $idd = $this->input->post('id');
    $aircraft_j = array();
    $aircraft_j = $this->aircraft_model->get_aircraft_tip($idd);
    echo json_encode($aircraft_j);
    }

私のモデル

 function get_aircraft_tip($idd) {
    $this->db->where('id',$idd);
    $query = $this->db->get('aircraft');
    return $query->row_array();
    }
4

1 に答える 1

0

さて、あなたがブートストラップツールチップを使用していると言ったように。これがあなたがそれをするべき方法です:

あなたのhtmlで:

<a href="#" data-toggle="tooltip" id="something" title="" 
data-original-title="tooltip data goes here">whatever you want</a>

私が見ることができるように、あなたはあなたajaxとCIに問題はありませんcontrollerが、あなたはこのようにあなたにわずかな変更を加える必要がありますsuccess function

success: function(aircraft_j) {
                  $('#something').attr('data-original-title',aircraft_j);  
              }

また、あなたはあなたに役立つかもしれないprop()について読むことができます。

あなたが直面するかもしれない問題..

CI tip functionご覧echo json_encode($aircraft_j);のとおり、$aircarft_j変数は「文字列」データ型である必要があります。私が見ることができるように、あなたは$query->row_array();あなたのモデルから戻ってきているので、あなたはそれを配列として扱う必要があるかもしれませんここで それについての良い説明を見つけることができます。

于 2013-02-08T18:38:23.733 に答える