我需要在jquery-fancybox中显示从PHP函数生成的PDF报告。
问题是我需要将$_POST
表单数据提交到fancybox。你能告诉我怎么做这个吗?
执行生成报告功能的jQuery函数:
$(function() {
$("*").on("click", ".fancypdf", function() {
var form = $("form").serialize();
var url = this.value;
console.log("Button=" + url);
$.fancybox({
type: 'html',
autoSize: false,
content: '<embed src="' + url + '#nameddest=self&page=1&view=FitH,0&zoom=80,0,0" type="application/pdf" height="99%" width="100%" />',
beforeClose: function() {
$(".fancybox-inner").unwrap();
}
}); //fancybox
return false;
}); //click
});
生成报告PDF的PHP函数:
function exibirRelatorioPDF($dados = '') {
echo "POST=<br />";
print_r($_POST);
$dados = $this->pesquisar();
echo "Pesquisado";
CarregaJanelaPDF('almembal/ajuste', $dados);
}
答案 0 :(得分:0)
我解决了这个问题!我打开fancybox后插入了一个ajax请求。
$(function() {
$("*").on("click", ".fancypdf", function() {
var data = $("form").serialize();
var url = this.value;
console.log("Button=" + url);
console.log("Data=" + data);
$.fancybox({
type: 'ajax',
autoSize: false,
content: '<embed src="' + url + '#nameddest=self&page=1&view=FitH,0&zoom=80,0,0" type="application/pdf" height="99%" width="100%" />',
beforeClose: function() {
$(".fancybox-inner").unwrap();
}
}); //fancybox
$.ajax({
type: "POST",
cache: false,
url: url,
data: data,
success: function(data) {
$.fancybox(data);
}
});
return false;
}); //click
});