0

您好我有一个 Zend Framework 应用程序,以下代码是popularAction控制器

public function popularAction()
    {
        $type = $this->_getParam('ref',1);
        if($type == 'reviews'){
        $businessReviewMapper = new Application_Model_Mapper_BusinessReviewsMapper();
        $result = $businessReviewMapper->getTotalVote();

        $rotd = $businessReviewMapper->getROTD($result['review_id']);
        $rotd[0]['u_img'] = $this->view->getLoginUserImage($rotd[0]['social_id'],$rotd[0]['login_type'],null,null,square);
        $rotd[0]['rating'] = $this->view->getRatingImg($rotd[0]['rating']);
        $rotd[0]['business_name_url'] = preg_replace("![^a-z0-9]+!i","-", $rotd[0]['business_name']);            
        $this->render('reviews');
        $this->_helper->json($rotd);



        } elseif($type == 'openings') {
            $this->view->text = "New Openings";

        } else {
            $this->_helper->redirector('index', 'index', 'default');
        }

    }

当用户浏览到http://localhost/business/popular?ref=reviews上述控制器代码时,将呈现 reviews.phtml 模板。现在在模板本身内部有对数据的 ajax 请求,如下所示:

function getPopular()
{
    var count=1;
    $.ajax({
        url:"<?=$this->baseUrl('business/popular?ref=reviews')?>",
        data:{'count':count},
        dataType:"json"
        type:"POST",
        success:function(data){
            alert('ok')
        }
    });

不幸的$this->_helper->json($rotd);是,没有将数据传递给reviews.phtml,而是显示由zend db模型返回的json数据,我可能错了吗?谢谢

4

1 回答 1

1

如果您的目标是在 Ajax 请求上发送 JSON 而不是 .phtml 文件,请尝试实现:

  if ($this->getRequest()->isXmlHttpRequest()) {
        if ($this->getRequest()-isPost()) {
            $this->_helper->json($rotd);
        }
    }

这部分检查请求是否是,让我们称之为:基于 ajax..

于 2012-10-24T05:40:20.433 回答