页面加载上的WP AJAX在Bluehost上不工作,但在GoPardy上工作

时间:2016-08-16 作者:Rituparna sonowal

Let me explain the whole thing:我有表格,在提交时,它会在结果页上生成图表。我正在使用html2canvas和jspdf从结果页的部分创建id为“graphtopdf”的pdf。之后,我将使用WP AJAX将数据(pdf的base64\\u编码)发送到一个函数,以便我可以将其附加到电子邮件中。

在网站从godaddy迁移到bluehost后,它就不能正常工作了。我不知道发生了什么,因为没有错误或警告!!

以下是代码片段:

jQuery(function($){
$("#headnote").css(\'display\',\'block\');
$("#footnote").css(\'display\',\'block\');
html2canvas($(\'#graphtopdf\'), {
    allowTaint: true,
    taintTest: false,
    onrendered: function(canvas){
        $("#headnote").css(\'display\',\'none\');
        $("#footnote").css(\'display\',\'none\');
        var semail = $(\'#emailholder\').val();
        var doc = new jsPDF(\'p\', \'mm\', \'a4\');
        doc.addImage(canvas,\'JPEG\',2,10);
        var updf = btoa(doc.output());
        jQuery.ajax({
            type:"POST",
            url: log_data.ajaxurl,
            data: {
                action: "ssr_form_sub",
                e: semail,
                s: updf
            },
            success:function(data){
                console.log(data);
            },
            error: function(errorThrown){
                console.log(errorThrown);
            }
        });
    }
});
});

//functions.php file
add_action("wp_ajax_nopriv_ssr_form_sub", "ssr_submit");
add_action("wp_ajax_ssr_form_sub", "ssr_submit");
function ssr_submit() {
 //wpmail code..
}
请有人给我指点迷津,好让我解决这个问题。

1 个回复
最合适的回答,由SO网友:Rituparna sonowal 整理而成

好的,让我回答我自己的问题,因为我知道没有类似的情况,没有人能正确地回答这个问题!!也许这对其他人有帮助。该问题是由JavaScript库\'html2canvas\'bluehost似乎不喜欢这两种选择:

allowTaint : 是否允许跨原点图像污染画布

taintTest : 是否在绘制前测试每个图像是否污染画布

通过删除这两个选项,我的问题得到了解决。

相关推荐

尝试在WordPress中实现AJAX注释,遇到WP错误

我试图在WordPress中为我的评论实现Ajax,使用this tutorial. 但我在将教程中的代码集成到自己的预构建主题时遇到了问题。问题是,我要么得到一个WP错误“检测到重复注释;看来你已经说过了!”或标准500错误。以下是我得到的:下面是我对ajax的评论。js文件如下所示: * Let\'s begin with validation functions */ jQuery.extend(jQuery.fn, { /* * check i