所以我有这个JS代码:
myClass = new Class({
initialize: function() {
this.btnSubmit = document.id('btnSubmit');
this.sendData = new Request({
"url":"/",
"method":"post",
"data": {"option":"com_my4quiz", "controller":"conduit", "task":"save", "hrdata":"foo"},
"onSuccess": this.handleResult.bind(this)
});
this.btnSubmitObserver = function() { this.sendData.send(); }.bind(this);
this.btnSubmit.addEvent("click", this.btnSubmitObserver);
},
handleResult: function(stuff) {
//do stuff
}
});
如果我将此帖子发布到我的Joomla 3.2.0组件,它将返回主页。一旦我切换到get,它就会将数据发送到正确的位置,我得到了我期望的结果。
答案 0 :(得分:1)
我认为由于您的控制器页面加载了整个视图。
这可能是由于您的控制器save()
内部发生的。函数不呈现任何特定视图。
所以解决方案是在Ajax结果之后只渲染正确的布局或者只是放一个exit();
在save()
exit();
或
$view->setLayout($layoutName);
$view->display();
希望它的帮助..