2017-06-13 198 views
0

我的觀點笨查詢結果顯示

<?php echo $calendar; ?> 
<div id="event_area"></div> 
<script type="text/javascript"> 
$(document).ready(function(){  

    $('.calendar .day').click(function(){ 

     var day_data= $(this).find('.content').html(); 

     if($(this).find('.content').html()!=null){ 

     $.ajax({ 
      url: "<?php echo base_url('calendar/pass_name')?>/", 
      method:"POST", 
      data:{'day_data':day_data}, 
      success:function(data){ 


       $('#event_area').html(data); 


      } 


     }) 

我的控制器:

function pass_name(){ 

    $name=$this->input->post('day_data'); 

    $result=$this->load->model('calendar_model')->get_description($name); 
    $data['calendar'] = $result; 

    echo json_encode($data); 

} 

我的模型:

function get_description($name){ 
    $query = $this->db 
    ->select('description') 
    ->from('calendar') 
    ->where('name',$name) 
    ->get(); 

    return $query->result(); 

} 

這是我在我的觀點得到結果的一個例子。 {「calendar」:[{「description」:「test description \ r \ nwww.google.com </a>」}]} 如何使它更好,例如顯示「test description ..」字符?

在此先感謝。

+0

在你的jquery腳本中使用parseJSON,它會工作...如果你想我解釋更多..加入聊天http://chat.stackoverflow.com/rooms/146504/codeigniter –

回答

0

你必須在你的Ajax代碼添加dataType:'json'

$.ajax({ 
     url: "<?php echo base_url('calendar/pass_name')?>/", 
     method:"POST", 
     dataType:'json', 
     data:{'day_data':day_data}, 
     success: function(data){ 
      $('#event_area').html(data); 
     } 
}); 
1

在你的Ajax成功功能替換代碼如下

success:function(data){ 
    var obj = $.parseJSON(data); 
    var content = ''; 
    $.each(obj.calendar, function(i,v){ 
     content+= '<p>'+v.description+'</p>'; //--> here you can add any tag, class 
    }); 
    $("#event_area").html(content); 
} 

希望這個代碼可以解決你的問題。如果您需要進一步澄清, 我很樂意爲您提供幫助。