为什么我的代码循环无限提交而不回显$post-nametest_value


Why my code loop infinite submit and not echo $post name test_value?

为什么我的代码循环无限提交而不回显$post-nametest_value?

我该怎么做?

<form id="fid" method="POST">
    <input type="text" name="test_value" value="ON">            
    <input type="submit" name="submit" value="OK">   
</form>
<input type="text" id="check_submit"/>

<script>
var check_submit_val = document.getElementById("check_submit").value;
if(check_submit_val != '')
{
}
else
{
    document.getElementById('check_submit').value = '1';
    document.createElement('form').submit.call(document.getElementById('fid'));
}
</script>
<?php
if(isset($_POST["submit"]))
{
    echo $_POST["test_value"];
}
?>

这是因为当id check_submit为空时,它会提交表单,所以你正在调用当前文件,所以它会检查id check_sumit是否有值,所以它重新加载了仍然为空的页面,所以会得到无穷大循环。所以我建议您在$_POST提交后设置check_submit

更改

<form id="fid" method="POST">
    <input type="text" name="test_value" value="ON">            
    <input type="submit" name="submit" value="OK">   
</form>
<input type="text" id="check_submit"/>

喜欢这个

<form id="fid" method="POST">
    <input type="text" name="test_value" value="ON">            
    <input type="submit" name="submit" value="OK">   
</form>
<input type="text" id="check_submit" value="<?= isset($_POST["test_value"]) ? $_POST["test_value"] :''; ?>"> //set check_submit value if happen submit form