Javascript 表单提交 POST 没有数据

Javascript form submit POSTs no data

这是我用来 post 数据到 gamelobby.php

的表格
<form id="game_form" method="POST" action="/gamelobby.php">
    <input type="text" id="plr_name"></input>
    <input type="hidden" value="" id="table_name"></input>
</form>
    <button id="codefight_create">Create a Fight</button>

这是提交表单的函数

    function codefight_create(){
            // blah blah, some ajax
            table_name = xmlhttp.responseText;
            document.getElementById("table_name").value = table_name;
            document.getElementById("game_form").submit();
            // console.log(table_name);
        }
    document.getElementById("codefight_create").addEventListener("click", function(){
        codefight_create();
    });

问题是当我在gamelobby.php页面上var_dump($_POST)时,页面上的$_POST superglobal中没有存储数据。

<form id="game_form" method="POST" action="/gamelobby.php">
...
</form>
<button id="codefight_create">Create a Fight</button>

<form id="game_form" method="POST" action="gamelobby.php">
...
<input type="submit" value="Create a flight"/> 
</form>

在按钮输入上通过onclick="codefight_create();"添加点击事件。 您可以使用侦听器事件,但需要在文档准备好后将其添加到 JQUERY..

您忘记了 input 的名称:

<input type="text" id="plr_name"></input>

<input type="text" id="plr_name" name="plr_name"></input>

table_name input 相同,id 仅在客户端,不会发送到服务器)