正如我在评论中提到的,您的预览按钮应该通过ajax提交表单以获取POST预览值(我们将使用ajax而不是iframe),因此:
然后你需要将预览按钮绑定到手动(“点击”)方法,首先通过ajax提交表单….然后将结果发布在fancybox中,如下:
$(document).ready(function () {
$('.preview2').on("click",function (e) {
e.preventDefault(); // avoids calling preview.PHP
$.ajax({
type: "POST",cache: false,url: this.href,// preview.PHP
data: $("#postp").serializeArray(),// all form fields
success: function (data) {
// on success,post (preview) returned data in fancybox
$.fancybox(data,{
// fancybox API options
fitToView: false,width: 905,height: 505,autoSize: false,closeClick: false,openEffect: 'none',closeEffect: 'none'
}); // fancybox
} // success
}); // ajax
}); // on
}); // ready
见DEMO(随意浏览源代码)