Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 更新Lemonstand部分关闭的FancyBox_Jquery_Ajax_Fancybox - Fatal编程技术网

Jquery 更新Lemonstand部分关闭的FancyBox

Jquery 更新Lemonstand部分关闭的FancyBox,jquery,ajax,fancybox,Jquery,Ajax,Fancybox,我正在为一家网店使用Lemonstand,我想在关闭FancyBox时更新一个部分。 要触发同一页面上某个部分(即按钮)的更新,请执行以下操作: onClick="return $(this).getForm().sendRequest('foo', {update: {'foo_page': 'foo_partial'}})" 但现在我想在关闭FancyBox时这样做。我知道如何使用FancyBox中的onClosed选项重新加载整个父页面。但我不想重新加载整个页面,只想重新加载部分页面 任

我正在为一家网店使用Lemonstand,我想在关闭FancyBox时更新一个部分。 要触发同一页面上某个部分(即按钮)的更新,请执行以下操作:

onClick="return $(this).getForm().sendRequest('foo', {update: {'foo_page': 'foo_partial'}})"
但现在我想在关闭FancyBox时这样做。我知道如何使用FancyBox中的onClosed选项重新加载整个父页面。但我不想重新加载整个页面,只想重新加载部分页面


任何帮助都将不胜感激。

尝试在fancybox回调中移动
onclick
函数

…适用于fancybox v1.3.4

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

$(".fancybox").fancybox({
 afterClose: function(){
   return $(this).getForm().sendRequest('foo', {update: {'foo_page': 'foo_partial'}});
 }
});
注意:在
onclick
内联声明中

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

。。。我不清楚
$(this)
指的是什么。。。因此,您可能需要在fancybox回调中定义这样的选择器。

事实证明,我并不遥远。解决方案是给父页面上的表单一个ID,然后调用该ID

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

这就是我回答中的注释“…
$(this)
…因此您可能需要在fancybox回调中定义这样的选择器。”