您可以在此处查找 joomla 中正确的 ajax 调用
How to Write PHP in AJAX
在您的控制器中,您应该有一个文件“mycall.json.php”,该文件将处理并返回您的 ajax 调用的 json 格式
Joomla 没有将 AJAX 构建作为其系统的一部分。我的答案来自 lynda.com 的 Josef Leblanc 课程
http://www.lynda.com/Joomla-1-6-tutorials/Joomla-1-7-Programming-and-Packaging-Extensions/73654-2.html
正如我所说:在前端 JS 中写这个:
$.ajax({
type: 'GET',
url: 'index.php',
data: {option: 'com_componenetname', task: 'taskname.youroperation', format: 'json', tmpl: 'raw'},
dataType: 'json',
async: true, // can be false also
error: function(xhr, status, error) {
console.log("AJAX ERROR in taskToggleSuceess: ")
var err = eval("(" + xhr.responseText + ")");
console.log(err.Message);
},
success: function(response){
// on success do something
// use response.valuname for server's data
}
,
complete: function() {
// stop waiting if necessary
}
});
在后端,您应该在 com_componentname/controllers/taskname.json.php 下有一个文件
该文件应如下所示
class ComponentnameControllerTaskname extends JControllerLegacy (Legacy only J3.0)
{
public function __construct($config = array())
{
parent::__construct($config);
$this->registerTask('operationname', 'functionname');
}
public function functionname() {
// do something in backend
echo json_encode(array(''var1' => val1, 'var2' => val2 ) );
}
}
nibra - 我在我所有的 joomla 网站中都使用它,它的工作非常完美。你的评论是错误的,请把我的信用还给我