0

FacebookのOpenGraphオブジェクトとアクションを作成しました。それは非常にうまく機能し、完全にテストされています。問題は、データが返されるときに別のフォームを送信したいということです。

明確にするために、ユーザーができる2つのボタンがあります。

  1. フォームを送信する[公開]ボタンをクリックしてアイテムを公開するか、
  2. 「Facebookで公開」をクリックすると、オープングラフオブジェクトリクエストがFacebookに送信され、戻ってきたときに他のボタンから同じ公開フォームが送信されます。

コードは次のとおりです。

$(".publish_with_fb_action").click ->
$form = $("form.publish_item")
$.post "https://graph.facebook.com/me/my_app_name:add?item=" + app.showUrl + "&access_token=" + FB.getAccessToken(), (data) ->
$form.submit()

繰り返しますが、このコードは問題なくアイテムをFacebookに配置します。奇妙なことに、同じコード(jQuery AJAX post)をアプリ内の別のURLでテストすると、実際に機能してフォームを送信しますが、この特定のコードでは機能しません。

私は$form、ちょうどformまたはさらにに変更するなどの他の解決策を研究しましform[0]たが、それでも運がありません。

4

1 に答える 1

0

全体的な解決策には、成功コールバック句を常にに変更することが含まれていました。

$(".publish_with_fb_action").click ->
  $this = $(this)
  $form = $(".publish_item")
  $.post( "https://graph.facebook.com/me/<my_app>:add?item=" + app.showUrl + "&access_token=" + FB.getAccessToken()
  ).always (data) ->
    $form.submit()
    $this.html "added to facebook"
于 2013-03-18T22:26:55.703 に答える