2011-01-26 24 views
0

FBML静的ページ内のページ読み込み時にスクリプトを実行するにはどうすればよいですか?ページ読み込み時に静的FBMLでスクリプトを実行

私がしたいことは、ページが読み込まれて何らかのデータが表示されたときに、自分のアプリケーションにajax呼び出しを行うことです。

私は以下のスクリプトを試しましたが、うまくいきません。私はそれの機能にし、それが動作クリックでそれを通じ呼んで、私は成功メッセージあなたが使用する必要があります

<a href="#" onclick="on_load(); return false;">Click</a> 
<script type="text/javascript"><!-- 
function on_load() { 
var ajax = new Ajax(); 
ajax.responseType = Ajax.JSON; 
ajax.ondone = function(data) {   
    new Dialog().showMessage("Success", "Got Response"); 
} 

    ajax.onerror = function(data) {   
    new Dialog().showMessage("Error", "Failure"); 
    } 

    ajax.requireLogin = false; 
    ajax.post('http://www.xyz.com/abc'); 
} 

//--></script> 

答えて

1

を取得する場合、私は、任意のメッセージの成功でもエラー

<script type="text/javascript"><!-- 
var ajax = new Ajax(); 
ajax.responseType = Ajax.JSON; 
ajax.ondone = function(data) {   
    new Dialog().showMessage("Success", "Got Response"); 
} 

    ajax.onerror = function(data) {   
    new Dialog().showMessage("Error", "Failure"); 
    } 

    ajax.requireLogin = false; 
    ajax.post('http://www.xyz.com/abc'); 

//--></script> 

どちらを得ることはありませんFBJS (JSのFacebook版)。あなたはAJAX呼び出しhere

についてのドキュメントを見つけることができ、それは

だけで、これは、サーバーエラーと応答ではないことを確認するために、次の行を追加しようとするUPDATE

<script><!-- var ajax = new Ajax(); ajax.ondone = function(data) { //do something } ajax.post('http://example.com/testajax.php'); //--> </script> 

のようなものになりますタイプ。

req.responseType=Ajax.FBML;  
ajax.onerror=function(data){ 
    alert("Something went wrong. Please, try again."); 
} 

ResponseTypeはAjax.RAW、Ajax.JSON、又はAjax.FBMLのいずれかとすることができます。

FireBugを使用していますか?サーバーへの呼び出しやJSエラーがありますか?

UPDATE

問題は、ページのアップロードイベントでそれを実行する場合。あなたはあなたのページの最後にスクリプトを置くべきです。何かが記述されたようなものhere

+0

私はこれを試しましたが、うまくいきません:( –

+0

正確に動作していないのですか?コンソールにjsエラーが表示されますか?スクリプトの実行が瞬時に実行されているかどうかを確認するアラートを表示しようとしますか? –

+0

私が使用したスクリプトを追加しました。上記のスクリプトを機能させたままでクリックすると動作します。 –

関連する問題