好的所有其他问题要么与版本1而不是版本2有关,要么只是调用带有1个变量的简单文件。基本上我想要做的是获取输入字段并将它们传递给PHP文件,不提交表单并在Fancybox中显示html回显。
在版本1.34上,您使用了$ .fancybox.showActivity。但这不是版本2中的选项。
所以我尝试了以下内容:
$.ajax({
url: "exec/preview.php",
data: $('#campaignform').serialize(),
dataType: "html",
success: function(data){
$.fancybox({
'content' : data,
'type' : 'iframe'
});
}
});
但是我收到了在此服务器上找不到请求的URL / [object Object]。
我已尝试将类型设置为内联。它所做的只是提交表格。在实际发布广告系列之前,这是预览。
将SUCCESS功能更改为:
success: function(data){
$.fancybox(data,{
'type' : 'iframe'
});
}
将所有返回的数据附加到iframe的网址中。
有什么想法吗?
答案 0 :(得分:3)
我摆弄了这个并且它很棘手,因为FancyBox2没有任何文档。
我认为这个(ajax版本)应该有效:
$("#your_form_id").submit(function() {
$.fancybox({
padding : 0,
autoSize : true,
minHeight : 10,
fitToView : false,
arrows : false,
href : $(this).attr("action"), //Your form must have an action.
type : 'ajax',
ajax : {
type : "GET",
cache : false,
data : $(this).serializeArray(),
},
scrolling : 'no',
transitionIn : 'none',
transitionOut : 'none'
})
return false;
});
答案 1 :(得分:1)
看看这个:http://fancybox.net/blog#tip5
向下滚动一下,您会在简单的验证示例中看到完全相同的事情。