0

我需要在单击提交按钮后但在将 POST 数据发送到服务器之前将表单元素动态添加到 HTML 表单。新元素必须从我服务器上的 PHP 文件中“读取”。

历史:目前我的 HTML 表单有“隐藏”字段,这些字段被提交到另一台服务器进行处理。我无法控制其他服务器。我的问题是任何人都可以编辑这些隐藏字段。

提交表单后,如何将表单元素动态添加到 POST 数据中?

4

3 回答 3

1

你可以这样尝试:

  1. 首先通过将提交按钮类型从“提交”更改为“按钮”(或其他)来禁用提交

  2. 将该按钮放入onclickjavascript 例程(我在这里使用submit_form())。

  3. 在表单中创建一个空 div。(这里我称之为id = 'dynamic'

  4. 使用 jquery,这是submit_form().

  5. 我认为您需要花一些时间让这些元素在提交之前正确绑定。也许之前有短暂的延迟$("#myForm").submit()

这是该submit_form()函数的代码:

function submit_form()
  {
    $("#dynamic").append("<input type='hidden' name='input1' value='whatever'>");
    $("#dynamic").append("<input type='hidden' name='input2' value='whatever'>");
    $("#myForm").submit();
  } 
于 2011-01-31T21:07:12.513 回答
0

您可以将数据发布到您的服务器,然后将其再次发布到附加了新元素的外部服务器。

你的工作是在服务器端完成的。

也可以看看:

php 服务器到服务器的帖子?

于 2010-11-30T10:32:24.567 回答
0

如果您需要对提交给其他服务器的内容进行任何控制,则必须自己进行。将表单提交到您自己的服务器,然后对其进行验证,添加您的数据并重新提交到其他服务器。

您可以使用 PHP 中的 CURL 扩展从您的服务器发布数据。

于 2010-11-30T10:36:00.140 回答