HTML两个表单和两个在同一页面上提交[重复]

Posted

技术标签:

【中文标题】HTML两个表单和两个在同一页面上提交[重复]【英文标题】:HTML two forms and two submit on same page [duplicate] 【发布时间】:2017-03-21 18:09:22 【问题描述】:
<form id = "msform" action = "" method = "POST">
<input type = "text" name = "name" />
<input type = "submit" name = "submit1" value "Submit" />
</form>
<form id = "msform" action = "" method = "POST">
<b>Name:</b> <?php echo $_POST['name']; ?> 
<input type = "submit" name = "submit2" value "Launch" />
</form>

我正在使用两个 html 表单,我想将一个表单的数据显示给另一个表单,任何人都可以指导我这怎么可能??

【问题讨论】:

首先你应该改变你的id,因为这两种形式不能相同 从唯一的 id 开始,然后在表单上添加一个 onsubmit 事件并将其写入另一个表单 @KevinKloet 为什么我们要使用 js 来做这么简单的事情?适用于 php @mtizziani 这只是一个建议,php 确实可以正常工作。 【参考方案1】:
var form1 = document.getElementById("msform");
 form1.onsubmit = function()
 document.getElementById("msform2").style.display = "block"; 
; 

我是这样完成的,但是点击提交按钮时不显示第二个表单我认为它的 jquery 动画问题

【讨论】:

【参考方案2】:

我认为您在一个 html 页面中使用了两个,并且希望在单击按钮时将一个表单的字段值显示给另一个表单。在这种情况下,最好使用 js/jquery。您可以轻松获取一个字段值并使用 js/jquery 放入另一个字段。

//Get
var val = $('#field_id').val();

//Set
$('#field_id').val('bla'); 

【讨论】:

但是在我的情况下,如果我这样做的话会有很多字段,它会变得太冗长的代码【参考方案3】:

对我来说很好。但按钮是&lt;button&gt; 而不是输入类型提交。并且永远不要直接接触像$_POST$_GET这样的全局变量,使用filter_input。另一件事是,一个 id 只能使用 1 次,两种形式都使用了相同的 id。

<form id="msform1" action="" method="POST">
    <div>
        <input type="text" name="name" />
    </div>
    <button type="submit" name="submit1">
        Submit
    </button>
</form>

<form id="msform2" action="" method="POST">
    <div>
        <b>Name:</b> <?php echo filter_input(INPUT_POST, 'name'); ?> 
    </div>
    <div>
        <button type="submit" name="submit2">
            Launch
        </button>
    </div>
</form>

【讨论】:

好的,我会试试这个,我认为它适用于我的场景【参考方案4】:

试试这个,检查提交的是哪个按钮。

if ($_SERVER["REQUEST_METHOD"] == "POST") 

    if ($_POST['submit1'] == 'Submit') 
      // Submit button 
    
    else 
    
      // Launch button 
    

【讨论】:

我更喜欢这种类型的检查单击了哪个按钮。安全、简单、干净。也推荐给初学者。 var form1 = document.getElementById("msform"); form1.onsubmit = function() document.getElementById("msform2").style.display = "block"; ;我是这样做的,但第二种形式没有显示我认为它的 jquery 动画问题

以上是关于HTML两个表单和两个在同一页面上提交[重复]的主要内容,如果未能解决你的问题,请参考以下文章

重定向到同一页面php后避免表单重新提交[重复]

如何在具有相同模型的同一 MVC 页面上重用表单?

html中提交表单后如何在同一页面上显示表格?

同一页面两张form表单内可以有相同name和id的input吗

flask在同一个页面提交多个form请求

使用 Django 在一个页面上登录和注册表单