Jos*_*e S 3 ajax jquery cakephp cakephp-1.3
我正在使用jQuery向某些控制器操作发出AJAX请求.此请求是从同一控制器中编辑操作视图中的按钮激活的.
我的问题:Ajax请求返回编辑视图的所有代码(包含所有表单和输入)而不是预期的数字.如果我在添加动作的视图中放置相同的ajax按钮,它将完美地工作(它返回数字).
编辑和添加操作保持默认生成(使用烘焙).
这是用于发出ajax请求的jQuery函数
$.ajax({
type: 'POST',
url: 'checkTargets',
data: {target: tgt_array, channel: channel_type},
success:function(data){
$('#num_subscribers > span').html(data);
},
error:function(){
$('#num_subscribers > span').html("The subscribers could not be loaded");
},
timeout: 5000
});
}
Run Code Online (Sandbox Code Playgroud)
这是行动
function checkTargets() {
if ($this->RequestHandler->isAjax()) {
if(!empty($this->params['form'])) {
$data = $this->params['form'];
if ($data['channel'] === 'SMS') {
$channel = 'sms';
} else {
$channel = 'pin';
}
$targets = $this->processPostTargets($data['target']);
$this->RequestHandler->respondAs('text');
//This echo a NUMBER
echo ClassRegistry::init('Selection')->countSubscribersInTarget($channel, $targets);
Configure:: write('debug', 0);
$this->autoRender = false;
exit();
}
}
}
Run Code Online (Sandbox Code Playgroud)
为什么会这样?
谢谢
只是一个无法访问所有内容的建议,你试过这个吗?
$this->autoRender = false;
$this->layout = 'ajax';
Run Code Online (Sandbox Code Playgroud)
另外我建议保持简单:
$.post("/controller/checkTargets", function(data) {
alert(data);
}
function checkTargets() {
$this->autoRender = false;
$this->layout = 'ajax';
echo "Im working";
}
Run Code Online (Sandbox Code Playgroud)
从那里开始
| 归档时间: |
|
| 查看次数: |
10242 次 |
| 最近记录: |