PHP - 在提交之前添加表单元素 - 购买按钮

时间:2010-11-30 10:21:06

标签: php jquery forms form-submit hidden-field

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

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

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

3 个答案:

答案 0 :(得分:1)

你可以这样试试:

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

  2. 将该按钮上的onclick放入javascript例程(此处我使用submit_form())。

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

  4. 使用jquery,这是submit_form()

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

  6. 以下是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();
      } 
    

答案 1 :(得分:0)

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

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

另见:

php server-to-server post?

答案 2 :(得分:0)

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

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

相关问题