如何进行AJAX调用 - Elgg

时间:2016-06-15 13:04:02

标签: javascript php html ajax elgg

我试图在elgg进行AJAX调用,但到目前为止我还没有成功。我可能做错了什么,或者我错过了什么?

提前谢谢大家。

Elgg版本2.1.1

start.php

// in myplugin_init()
elgg_register_ajax_view('forms/myplugin/add');

默认/形式/为myplugin / add.php

<div>Successful AJAX call</div>

默认/对象/ my_ajax_plugin.php

<div class="myplugin-form-container">JQ Here</div>

<script type = "text/javascript" language = "javascript">

    var Ajax = require('elgg/Ajax');
    var ajax = new Ajax();

    ajax.form('myplugin/add').done(function (output, statusText, jqXHR) {
        if (jqXHR.AjaxData.status == -1) {
            return;
        }
            $('.myplugin-form-container').html(output);
    });

</script>

1 个答案:

答案 0 :(得分:1)

Elgg使用requirejs进行依赖项加载。你不能只是抛出require inline并期望它能够工作。你可以尝试:

require(['elgg/Ajax'], Ajax => {
  var ajax = new Ajax();
  ajax.view('developers/ajax_demo.html').then(body => {
    console.log('RESULT', body)
  })
})