2014-07-14 146 views
2

我需要當我點擊的錨標記,我需要負載控制器功能,從模型調用函數獲取數據,並將其發送到view_content頁面和顯示數據笨jQuery的AJAX加載視圖

這裏是我的代碼

視圖

<div id="loading"></div> 
<a href="" class="company">Click Here</a> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 

<script type="text/javascript"> 
    $(document).ready(function(){ 
    $(".company").click(function(e){ 
    e.preventDefault(); 
    var id = $(this).attr('id'); 
    var site_url = "<?php echo site_url('site2/home2/'); ?>" +id; //append id at end 
    $("#loading").load(site_url); 
    //alert(id); 
    //alert("aawa"); 
    }); 
    }); 

</script> 

控制器

public function home2($id){ 
     $this->load->model('get_click_data'); 
     $data['company_data'] = $this->get_click_data->get_company($id); 
     $this->load->view('view_content',$data); 

    } 

模式

<?php 
class Get_click_data extends CI_Model{ 

    public function get_company($id){ 
     $query = $this->db->query("SELECT * from companydetails where id = '$id'"); 
     return $query->result(); 

    } 

view_content

<div id="content"> 
<h3>Welcome to Home Page 12345</h3> 
<?php 
    print_r($company_data); 
?> 

+0

所以有什麼問題..? –

+0

不加載view_content頁面,只能提醒 –

+0

檢查您的控制檯的任何錯誤,您的網址可能無法正常工作,因爲您沒有完整的url ...並將您的警報放在.load()的回調中 –

回答

3

與您使用笨,嘗試更改爲:

... 
var id = $(this).attr('id'); //you need to have 'id' attribute in your anchor 
$("#loading").load("<?php echo site_url('site2/home2/); ?>" + id, function() { 
    alert("aawa"); 
}); 
... 

,並在您控制器文件,

function some_function($your_id) { 
    //get data 
    //do something with $your_id 
    //pass view as string 
    echo $this->load->view('view_content', $data, TRUE); 
} 

更新:: 把JS變量在您的網站的網址,這樣做:

var id = $(this).attr('id'); 
var site_url = "<?php echo site_url('site2/home2/'); ?>" + id; //append id at end 
$("#loading").load(site_url, function() { 
    alert("aawa"); 
}); 

多了一個更新:: 如果你想從js向你的函數傳遞多個參數,你可以這樣做:

var id = $(this).attr('id'); 
var second_param = "some value here"; 
var site_url = "<?php echo site_url('site2/home2/'); ?>" + id + "/" + second_param; 
$("#loading").load(site_url, function() { 
    alert("aawa"); 
}); 

,並在您的控制器功能

function some_function($your_id, $other_param) { 
    do something with $your_id and $other_param 
    //pass view as string 
    echo $this->load->view('view_content', $data, TRUE); 
} 

此外::home2()功能時,您要加載視圖,改變

$this->load->view('view_content',$data); 

echo $this->load->view('view_content',$data, TRUE); 

讓它迴歸編輯字符串爲您​​jQuery函數

+0

我需要打印site_url裏面的id值 var id = $(this)。ATTR( 'ID'); \t $( 「#加載」)負載( ''); –

+0

@GihanWijethunga看到更新的答案,你是不是通過ID正確 –

+0

我需要JavaScript變量到SITE_URL() ** VAR ID = $(本).attr( '身份證'); \t $(「#loading」)。load('<?php echo site_url('site2/home2 /.'+ id +'。);?>'); ** 我需要通過變量 @Sudhir –

0

其工作

<script type="text/javascript"> 
    $(document).ready(function(){ 
    $(".company").click(function(e){ 
    e.preventDefault(); 
    var id = $(this).attr('id'); 
    $("#loading").load('<?php echo site_url('site2/home2/'); ?>'+id); 
    alert(id); 
    //alert("aawa"); 
    }); 
    });