这是我用来将数据发布到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
超全局中没有存储任何数据。
您忘记了input
的名称:
<input type="text" id="plr_name"></input>
自
<input type="text" id="plr_name" name="plr_name"></input>
(table_name
input
也一样,id
只在客户端,不会发送到服务器)
<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>
通过在按钮输入上添加单击事件="codefight_create();"。您可以使用侦听器事件,但您需要在文档准备就绪时将其添加到 JQUERY 中。