0

我正在尝试显示表格的行数。在控制器中,我有一个类似的功能:

public function index(){
  $count= $moviecount = $this->Media->find('count');
  $this->set(array('data' => $count, '_serialize' => 'data'));
}

在我的 index.ctp 中,我有一个带有 div 和所有内容的常规 HTML 脚本。在我的 JavaScript 文件中,我做了这样的事情。

function checkTbl(){
checkBrowser();//callback function
xmlhttprequestobject.open("GET", "/url/", false); //async
xmlhttprequestobject.onreadystatechange = function(){
if(xmlhttprequestobject.readyState==4 && xmlhttprequestobject.status==200){
  alert(xmlhttprequestobject.responseText);
}
}
xmlhttprequestobject.send();
}

但是当我单击图像事件 onClick 时,响应是 HTML,而不是计数的整数值。请帮忙。

4

2 回答 2

1

您是否正在加载 RequestHandler 组件?如果您不使用 .json 扩展名调用 URL,则必须手动将视图设置为以 json 响应。如果您使用路由器解析扩展,如果组件已加载,您将自动获得 json 响应。您是否按照此页面上的说明进行操作?

于 2013-07-08T00:27:19.910 回答
0

如果你想要 resposeText 作为 json_encode 然后在你的控制器函数中尝试这样的事情。通过使用这个你不需要 .ctp 文件。

 public function index()
 {
     $count= $moviecount = $this->Media->find('count');
     //$this->set(array('data' => $count, '_serialize' => 'data'));
    return new CakeResponse(array('body' => json_encode($count)));
 }
于 2013-07-08T05:35:38.453 回答