【问题标题】:codeigniter change content without refresh page by clicking anchorcodeigniter 通过单击锚点更改内容而不刷新页面
【发布时间】:2014-07-10 16:11:11
【问题描述】:

我只需要更改我的网页内容而不刷新页面,

查看

<a href="<?php echo site_url('site2/getBranchDetails/'.$row_bank->branch_id.''); ?>"><?php echo $row_bank->bank;  ?></a>

这个链接在我的导航栏上,当我点击这个链接时我需要改变内容,需要将 id 传递给我的控制器,

控制器

 public function getBranchDetails($b_id){
        $this->load->model('bank_account_model');
        $data['results'] = $this->bank_account_model->getAccount($b_id);
    }

结果数组中的数据应该在视图内容中查看,我需要ajax解决方案

【问题讨论】:

  • 向我们展示您尝试过的 ajax 代码

标签: javascript php jquery ajax codeigniter


【解决方案1】:

你的锚

<a href="javascript:;" class="branch" alt="123">CLick me</a>

PHP

public function getBranchDetails(){

    $b_id = $this->input->post('branch_id');
    $this->load->model('bank_account_model');
    $data = $this->bank_account_model->getAccount($b_id); //suppose its ->result();

    $rows  ='<ul>'; //i use ul, use table if u want
    foreach($data as $r){

        $rows .='<li>'.$r->branch_city.'</li>';
        $rows .='<li>'.$r->branch_name.'</li>';
    }
    $rows .='</ul>';


   echo json_encode(array('data'=>$rows));
}

这里是 jquery/ajax

$(function(){

 $(".branch").click(function(){

    var branch_id = $(this).attr("alt");

    $.ajax({

     url : 'your_url/getBranchDetails',type:'post',dataType:'json',
     data: {branch_id:branch_id},
     success:function(result){

        //fetch result.data
         alert(result.data); //do it yourself from here 
         //(append it somewhere)
         $('body').append(result.data);
      }

     })
  })
})

【讨论】:

  • 这里的id是什么
  • 它返回 [object Object] 我如何查看数据
  • alt="123" 在你的锚上是ID,再看一遍,我已经更新了..如果你发现这个正确,请将它设置为答案
  • 这里我需要在视图中显示结果,而不是在控制器中,你知道 mvc 架构吗
  • 嗯...是的,先生,我知道我相信这是解决方案。很抱歉,它只是不满足您的需要
猜你喜欢
  • 1970-01-01
  • 2020-07-28
  • 2011-04-08
  • 1970-01-01
  • 1970-01-01
  • 2018-10-30
  • 1970-01-01
  • 2016-06-10
  • 1970-01-01
相关资源
最近更新 更多