2016-06-15 3 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'을 붙이는 지, 클릭 할 때 'DIV'에 대해 말할 수 있습니까? 이것은 내가 고심하고있는 것의 일부입니다. –

+0

설명해 주시겠습니까? 나는 그것을 매우 감사 할 것이다. –