我有一个非常奇怪的问题:
在我的index.ctp中,我有以下代码向服务器发出ajax请求
$.ajax({
url: "<?php echo Router::url(array('controller' => 'brands', 'action' =>'filters'), true); ?>",
cache: false,
data : "Mod=weaves",
type: 'POST',
dataType: 'Html',
success: function (data) {
$('#resultsall').html(data);
}
})
在我的品牌控制器的过滤器操作中,我有这个
public function filters(){
if ($this->request->is('ajax')) {
$this->Brand->recursive = 0;
echo debug($this->request->data);
if($this->Session->read('conditions.brand')){
$brandconditions = $this->Session->read('conditions.brand');
$this->Paginator->settings = array('fields' => array('name', 'id'),
'conditions' => array('Brand.id' => $brandconditions)) +
$this->Paginator->settings;
$this->set('brands', $this->Paginator->paginate());
}
$this->set('mode', $this->request->data['Mod']);
$this->render('results','ajax');
}
}
我继续获取未定义的索引Mod。在服务器上运行但在我的localhost上运行良好。 如果我在localhost上运行echo debug,我得到了预期的结果,但在服务器上,请求数据正确显示1秒,然后数组在一秒后变为null。
答案 0 :(得分:0)
我认为数据应该传递为:
data: {"Mod" : "weaves"}