Javascript按钮,它提交联系人表单7表单,然后重定向到URL

Javascript button which submits Contact Form 7 form, then redirects to URL

本文关键字:表单 然后 重定向 URL 联系人 按钮 提交 Javascript      更新时间:2023-09-26

我正试图在我的网站上创建一个"选择您的电子邮件计划"页面-https://godesignweb.co.uk/e-mail-services/monthly-email/&我在提交表格时遇到了问题,然后根据他们选择的套餐重定向到特定的贝宝页面。

正如你从网站上看到的,它几乎就在那里,根据你选择的包裹,它在页面底部显示不同的内容。(我想包含一个重定向用户的提交按钮)。

我目前有

<input type="submit" form="email" value="send">

它在联系表格7表格之外,并且有效(在专业计划中)。如果你点击它,它就会提交表格。

不管怎样,我可以为这3个按钮调用3个不同的功能吗;

1) 提交表格(包括检查正常情况下的验证_2) 将用户重定向到贝宝页面

干杯

更新答案:

从你对我的回答的评论来看,如果你使用三个不同的提交按钮,你可以尝试以下内容:

1.)为每个提交按钮分配一个唯一的名称:

<!-- button in starter form -->
<input type="submit" name="submit-starter" form="email" value="Send"/>
<!-- button in pro form -->
<input type="submit" name="submit-pro" form="email" value="Send"/>
<!-- button in advanced form -->
<input type="submit" name="submit-advanced" form="email" value="Send"/>

2.)在PHP方面:

if (isset($_POST['submit-starter'])) {
  $plan= 'starter';
  $priceMonthly= 3.99;
} elseif (isset($_POST['submit-pro'])) {
  $plan= 'pro';
  $priceMonthly= 5.99;
} elseif (isset($_POST['submit-advanced'])) {
  $plan= 'advanced';
  $priceMonthly= 7.99;
}
// create the Paypal form
?>
<form name="_xclick" action="https://www.paypal.com/de/cgi-bin/webscr" method="post">
  <input type="hidden" name="cmd" value="_xclick">
  <input type="hidden" name="business" value="me@mybusiness.com">
  <input type="hidden" name="currency_code" value="GBP">
  <input type="hidden" name="item_name" value="<?php print $plan; ?>">
  <input type="hidden" name="amount" value="<?php print $price; ?>">
  <input type="image" src="http://www.paypal.com/en_GB/i/btn/x-click-but01.gif" border="0" name="submit" alt="Pay with PayPal">
</form>

--上一个答案--

我不确定我是否答对了,因为我只看到了一个(提交)按钮,而不是三个按钮,所以我希望我的答案不会误导你,或者在你的场景中没有意义:

我认为:

  1. 这三个按钮指的是你提供的三个方案
  2. 您只希望有一个验证函数
  3. 根据计划选择,您希望在Paypal结账表上有不同的价格

下面的代码将只处理前端控件,您肯定应该添加第二个基于服务器的验证,以确保没有人注入/操纵您的前端表单代码。

与其使用标准的提交按钮,不如将其更改为:

<input type="button" onclick="formInspectAndSubmit()" value="send"/>

并为您的计划添加一个表单变量

<input type="hidden" id="input-plan" name="input-plan"/> 

您的FRONTEND validation函数应该如下所示:

function formInspectAndSubmit() {
  // validation stuff ...
  // retrieve the chosen plan
  var plan= $('.active').prop('id');
  switch (plan) {
    case 'starter':
      // set hidden parameters for starters
      $('#input-plan').val('starter');
      break;
    case 'pro':
      // set hidden parameters for pro
      break;
    case 'advanced':
      // set hidden parameters for starters
      break;
  }
  // set POST variables based on above plan and redirect to validation page; this should then forward to Paypal checkout page with price defined by chosen plan
  $('#email').submit();
}