1

私はコントローラーの表示ビューにいます。ユーザーがリンクをクリックすると、フォームを含むポップアップウィンドウが表示されます。ユーザーが[送信]をクリックすると、フォームはajaxを介して同じコントローラーのカスタム「アクション」に送信されます。action.js.erbパーシャルには、次のコードがあります。

  window.opener.location.reload();
  window.close();

正常に動作しますが、ショービューページ全体がリロードされます。そして、フォーカスを戻し、js.erbパーシャルにいくつかのdiv更新を書き込みたいと思います。

4

3 に答える 3

1

完了したら、jquery を使用して非表示にします。

$('#popup_wrapper_id').fadeOut();
于 2012-04-04T13:50:25.643 に答える
1

helper から呼び出す代わりに、Ajax の onsuccess イベントでウィンドウを閉じます。

success: function(g) {
  window.close(); OR $('#popup_id').hide();
  $('#div_id').html("Write message or other response form your action").
}
于 2012-04-04T13:54:39.620 に答える