【问题标题】:HTML two forms and two submit on same page [duplicate]HTML两个表单和两个在同一页面上提交[重复]
【发布时间】: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 确实可以正常工作。

标签: javascript php jquery html


【解决方案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 动画问题
    猜你喜欢
    • 2012-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-25
    • 2017-09-09
    • 2015-05-13
    • 1970-01-01
    相关资源
    最近更新 更多