2016-06-15 9 views
0

elggでAJAX通話をしようとしていますが、これまでに失敗しました。私は何が間違っているのでしょうか、何が欠けていますか?AJAX通話の作成方法 - Elgg

ありがとうございます。

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> 
+0

[jQueryのAJAX呼び出しメカニズムを回避するため、何らかの理由はありますか?](http://stackoverflow.com/questions/20150130/ajax-and-php-to-enter-multiple-forms-データベースへの入力/ 20150474#20150474)。私はElggを使ったことはありませんが、単に$ .ajax()のラッパーを提供するようです。 – MonkeyZeus

+0

[Elgg](https://elgg.org/)はCMSです –

答えて

1

Elggは依存性ロードにrequirejsを使用します。あなたはインラインで必要なものを投げ捨てることはできません。あなたは試みることができる:

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

ありがとうございます。これは本当に明白なように思えるかもしれませんが、 'onClick'を付け加えるにはどうすればいいですか?これは私が苦労していることの一部です。 –

+0

説明してください。私はとても感謝しています。 –

関連する問題