【问题标题】:Two forms - one submit button?两种形式 - 一个提交按钮?
【发布时间】:2013-11-05 09:08:10
【问题描述】:

我的网站上有两个表格。

是否有可能当我提交其中一个时,它会从另一个表单的特定字段中获取表单数据?

我在 PHP 中使用 Recurly 系统。

【问题讨论】:

  • 也许您可以在表单上添加hidden 输入字段,并在更改或单击时复制数据,以确保您获得两个表单的结果。
  • 是的,它可以用 javascript 完成。您必须使用精心挑选的字段构造两个请求,然后发送它们。
  • @Lan 这是一个非常好的观点。我可以使用每个 onChange 更新会话数据,然后通过 Recurly 进行。
  • 使用 JS 在字段之间复制数据是相当简单的,但为什么不首先在第一个表单中包含该特定字段呢?
  • 请记住,如果您通过 document.forms["form1"].submit(); 发送 2 个或更多表单,则除最后一个请求外,每个请求都将被中止。因此,另一种解决方案是通过 AJAX 调用发送表单。

标签: javascript php api recurly


【解决方案1】:

您可以编写自己的函数。

function submit (){
   document.getElementById("firstform").submit();
   document.getElementById("secondform").submit();
}

然后您可以制作一个调用此函数的按钮。

如果这不起作用,请使用 ajax 重试。 Example

【讨论】:

  • 这看起来很完美!我会离开并测试并稍后报告。谢谢。
  • 嗯,如果他们实际上在当前页面上执行了一个无法正常工作的帖子。
【解决方案2】:

你可以用 javascript 来做。

例如:

var request =false;

function submit()
{
    var yourobject = document.getElementById("yourobject").value;

    data = "yourobject" + "=" + encodeURIComponent(yourobject);

    request.open("POST", "yourpage.php", true);
    request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    request.send(data);
}

然后输入:

<input type="button" onclick="submit()" value="Submit" />

【讨论】:

    猜你喜欢
    • 2018-01-19
    • 2015-10-02
    • 1970-01-01
    • 2012-12-29
    • 2015-11-14
    • 2019-01-16
    • 2012-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多