【问题标题】:jQuery - Submit Form to PHP and Generate In New WindowjQuery - 向 PHP 提交表单并在新窗口中生成
【发布时间】:2014-03-15 00:16:17
【问题描述】:

我在带有 Woo Commerce 2.1.5 的 Wordpress 3.8.1 上使用 Gravity Forms 1.8.5,并希望在产品页面上添加第二个按钮,该按钮运行 PHP 脚本,该脚本使用 fPDF 生成 PDF。我已经使用 jQuery 重写了 ID 为 previewButton 的按钮的功能来运行 PHP(代码包含在下面)。但是,我希望 PHP 在新窗口中生成 PDF。此外,按照现在的方式,PDF 是在同一个窗口中生成的,当您返回带有表单的页面时,“添加到购物车”按钮被禁用。我尝试使用下面代码的前几行来捕获表单操作,但它不起作用。任何人都可以帮助解决这两个问题吗?

1 - 在新窗口中生成 PDF

2 - 查看 PDF 后添加到购物车按钮起作用

您可以在以下位置查看产品页面示例: http://www.ortorderdesk.com/product/prepare-for-your-closing-copy/

我用来重写按钮的 jQuery 代码是:

// JavaScript Document
jQuery( document ).ready(function() {
var form = jQuery('.cart');
var originalFormAction = form.attr("action");

jQuery("#gform_submit_button_1").on("click", function(){
jQuery(this).parent("form.cart").attr("action",originalFormAction).submit();
});

jQuery("#previewButton").on("click", function(e){
e.preventDefault();
var sku = jQuery(".add_to_cart_button").attr('data-product_sku');
var preview = 'http://www.ortorderdesk.com/proofs/' + sku + '.php';
jQuery(".cart").attr("action", preview);
form.submit();
});
});

非常感谢任何帮助! 谢谢!

【问题讨论】:

    标签: javascript php jquery wordpress pdf


    【解决方案1】:

    有什么原因你不能有一个锚标签来调用你的 php 文件到一个新窗口?

    <a href='http://www.ortorderdesk.com/proofs/12345678.php' target="_blank" >Preview PDF</a>
    

    我的假1234578,我想,是你可以在页面加载时在服务器端php上生成的产品密钥。

    target=_blank 将在新窗口中打开被调用的页面,与您的主页面分开,如果删除 JQuery,您可能会发现您的购物车按钮有效。

    所有这一切都取决于您是否可以在页面加载时从 php 预生成 sku(12345678)。

    或者使用 JQuery 使用 .attr 动态更新 href

    【讨论】:

    • 谢谢!这是朝着正确方向迈出的一步。但是,它打开了两个窗口,不幸的是,“添加到购物车”按钮仍然不起作用。因为我已经有了你代码的第一行和第三行(它们是最后两行),所以我在两者之间添加了它。或者我应该把你的所有三行代码都放在我的代码中的某个地方吗?
    • 表单数据由 PHP 提取以填充生成的 PDF 的一部分。用户输入他们的位置、地址等,这些信息由 PHP 脚本检索并插入 PDF。
    • 没关系,您只需要在链接上填充正确的 SKU,调用的 PHP 文件将负责其余的工作。请参阅我关于动态更改 href 上的 sku 的更新答案
    • 嗯...它似乎没有填充用户的表单提交数据。
    • 如果您查看 html,您的“查看证明”按钮会以这种方式工作。如果您可以访问代码 Preview PDF,则需要将其复制为您的证明 PHP
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-04
    • 1970-01-01
    • 1970-01-01
    • 2013-05-04
    • 1970-01-01
    相关资源
    最近更新 更多