通过jquery fancybox发送函数(url)POST的任何想法


Any idea for send POST for a function (url) via jquery-fancybox?

我需要在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);
}

我解决了问题!我在打开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
});