更新Lemonstand部分onClosed FancyBox

时间:2012-11-05 15:53:27

标签: jquery ajax fancybox

我正在使用Lemonstand作为网上商店,我想在关闭FancyBox时更新部分内容。 要在同一页面上触发部分更新,即按钮,我会这样做:

onClick="return $(this).getForm().sendRequest('foo', {update: {'foo_page': 'foo_partial'}})"

但是现在我想在关闭FancyBox时这样做。我知道如何使用FancyBox中的onClosed选项重新加载整个父页面。但我不想重新加载整个页面,只有部分。

任何帮助都将不胜感激。

2 个答案:

答案 0 :(得分:0)

尝试在fancybox回调中移动onclick功能

... for fancybox v1.3.4

$(".fancybox").fancybox({
 "onClosed": function(){
   return $(this).getForm().sendRequest('foo', {update: {'foo_page': 'foo_partial'}});
 }
});

... for v2.x

$(".fancybox").fancybox({
 afterClose: function(){
   return $(this).getForm().sendRequest('foo', {update: {'foo_page': 'foo_partial'}});
 }
});

注意:在onclick内联声明中

onClick="return $(this) ....."

...我不清楚$(this)引用了什么...所以你可能需要在fancybox回调中定义这样的选择器。

答案 1 :(得分:0)

原来我不远了。解决方案是在父页面上为表单提供一个ID,然后调用所述ID。

'onClosed'      : function() {
    return $('#form_id').getForm().sendRequest('foo', {update: {'foo_page': 'foo_partial'}})
}