我在控制器的显示视图中,如果用户点击链接,则会显示带有表单的弹出窗口。如果用户单击“提交”,则表单将通过ajax提交到同一控制器中的自定义“操作”。在action.js.erb partial中我有以下代码:
window.opener.location.reload();
window.close();
它工作正常,但重新加载整个节目视图页面。我只想重点关注并在js.erb partial中编写一些div更新。
答案 0 :(得分:1)
使用jquery完成后隐藏它。
$('#popup_wrapper_id').fadeOut();
答案 1 :(得分:1)
不要从helper调用,而是关闭Ajax的onsuccess事件窗口。
success: function(g) {
window.close(); OR $('#popup_id').hide();
$('#div_id').html("Write message or other response form your action").
}
答案 2 :(得分:0)
在关联的action.js.erb文件中,添加以下代码。
function hideDialog() {
var $dialog = $('#dialog_area');
if ($dialog.is(':visible')) {
PageOverlay.hide();
$dialog.hide();
}
return this;
};