【问题标题】:how come additional html form info isn't added?怎么没有添加额外的 html 表单信息?
【发布时间】:2020-11-02 02:52:17
【问题描述】:

我不确定为什么在提交表单时没有提交我的附加输入信息。我已经应用了我在类似帖子中找到的内容,以便在提交表单之前插入额外的输入。不幸的是,只提交了“question1answers”。额外的“时间”信息不是:(这段代码有什么问题...

<form method="post" id="answer_form" action="./submit_test.php">
        <h3>1. xyz</h3>

   <div>
       <input type="radio" name="question1answers" id="question-1-answers-A" value="A" />
       <label for="question-1-answersA">A) <sup>253</sup>/<sub>240</sub> </label>
   </div>

   <input type="submit" value="Submit" name="Submit" style="font-size:32px;">
</form>

jquery:

$("#answer_form").submit(function(e){
    $("<input />").attr('type', 'hidden')
      .attr('name', 'time')
      .attr('value','60')
      .appendTo("#answer_form");
  return true;
});

【问题讨论】:

    标签: html jquery


    【解决方案1】:

    这应该可以工作,正如主题中提供的许多其他解决方案一样,此代码来自How to add additional fields to form before submit?

    你也可以像这样简单地做(只需添加隐藏):

    $("#answer_form").submit(function(e) {
      $(this).append('<input  name="time" value="60">');
    });
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <form method="post" id="answer_form" action="./submit_test.php">
      <h3>1. xyz</h3>
    
      <div>
        <input type="radio" name="question1answers" id="question-1-answers-A" value="A" />
        <label for="question-1-answersA">A) <sup>253</sup>/<sub>240</sub> </label>
      </div>
    
      <button type="Submit" value="Submit" name="Submit" style="font-size:32px;">Submit</button>
    </form>

    如您所见,这可以正常工作,如果不是问题出在其他地方,而不是出现在代码中。也许在你的 PHP 中。

    【讨论】:

    • 非常感谢您的回答,这对您有很大帮助,非常感谢。所以,我只是在查看 chrome 工具上的“网络”设置,并没有显示它已提交。所以我得看看是否还有什么奇怪的东西我因为一些奇怪的原因看不到......
    • @rickster26ter1 我刚刚在生产服务器中测试了它,它可以正常工作。我得到:60 A,检查你的 PHP 获取。这对我有用:$time=$_POST['time']; $question1answers=$_POST['question1answers']; echo $time."&lt;br&gt;"; echo $question1answers."&lt;br&gt;";
    • 谢谢你,ikiK。我发现这现在可以工作了,我在寻找 #answer_form 之前它甚至存在于另一个 javascript 文件中。我把它放在我的 index.php 中,它就可以工作了!但是,您的 $("#answer_form").submit 有效,而不是我的。我现在只是为时间设置一个值,但我需要能够插入一个 javascript 变量(时间是动态的)。不幸的是,当我尝试我的时,它不会提交。
    • @rickster26ter1 只需将 60 替换为:'+yourvariable+'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-26
    • 1970-01-01
    • 2014-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多