天梯梦 发表于 2009-12-9 23:40:23

关于jquery ajax 的疑问

                     $.ajax({
                              type:"post",
                               data: "picID=" + $(this).attr("id"),
                               url:"<?=site_url('photogallery/getPhoto')?>",
                              success: function(result) {

alert(

result

);},                                                            
                              error: function()   {alert("ajax error");}
                   });



   Controller层:
function getPhoto()
{
          //query the picture from model
          $query = $this->photomodel->getPic($this->input->xss_clean($this->input->post('picID')));
                        
          if($query->num_rows() > 0)
          {
                      $row = $query->row();
                      $output = "<divclass='winBar'><ul><li>_</li><li>x</li></ul></div><divclass='winContent'><div id='photo_title'>" . $row->photoName . "</div><div id='photo_item'>" . $row->photoLink . "</div><div id='photo_comment'>" . $row->comment . "</div></div>";
            }
            else
                  $output = "no picture was found";
          echo($output);
}


我想问的是,如何实现在Controller层 不写“echo” 而是是 “return” ?

因为我换成“return” 的时候, Ajax不能获取返回值 ! 但是又想不到能在view视图里面输出的方法......................


醒著做夢 发表于 2016-2-25 11:06:02

你用json返回这个图片地址后,然后在echo出来到view,然后$.parseJSON,然后再appendTo.....

jiekexuan 发表于 2015-5-19 17:12:49

你既然一定要用AJAX这种异步方式,可以用JSON返回 return是肯定不行的

星落凡辰 发表于 2016-1-7 18:06:36

这个有点吊

Hex 发表于 2009-12-10 00:03:09

$output 为什么不能放到视图呢?

天梯梦 发表于 2009-12-10 00:12:48

我就是不知道怎么放啊?我现在脑袋转不了弯~
getPhoto()和 $output 都是Ajax部分, 难道在getPhoto()里面重新导入视图$data['output '] = $output;$this->load->view('contents',$data); 之后再输出? 还是??:dizzy:

visvoy 发表于 2009-12-10 08:58:50

$this->output->append_output($output);

天梯梦 发表于 2009-12-10 22:03:24

哇塞,的确可以了,太神奇了,问题是,append_output,请问,这个东西是从哪里来的?在文档里面搜不到啊,输出类里面也没有? 您可以讲一讲吗?

Hex 发表于 2009-12-10 23:07:58

这肯定是 output 类里的方法啊。
看起来是未公开的 API 吧。

天梯梦 发表于 2009-12-11 00:05:00

还有未公开的api? 什么样的原因没有公开呢? 论坛里面有没有地方讲讲未公开的api呢? 哈哈 个人意见~~总之 问题解决了很开心,再次感谢您的帮助,还有咱们的版主!

Hex 发表于 2009-12-11 01:42:28

呵呵 windows 都有很多未公开 api,CI 当然也有。
至于为什么不公开,那就要问作者了,呵呵。

天梯梦 发表于 2009-12-11 03:03:38

看来找个组织还是很有必要性的!

天梯梦 发表于 2009-12-11 04:30:34

本帖最后由 天梯梦 于 2009-12-11 04:31 编辑

哈哈,我找到了!!

http://www.tig12.net/downloads/a ... I_Output.class.html
http://www.tig12.net/downloads/a ... thods_append_output

看来的确是有遗漏的啊~~
页: [1] 2
查看完整版本: 关于jquery ajax 的疑问