在隐藏的输入类型中传递一个 js 变量值,然后使用 php 检索它

Passing a js variable value in an input type hidden and then retrieve it with php

我想用 javascript 计算用户提交表单的数量 然后将提交表单的数量放入隐藏的输入类型的值属性中,然后使用 PHP(隐藏输入的名称属性)

检索该值

这是我试过的一个简单代码,但没有用:

form.html

<form method="post" action="submit.php">
<input type="text" name="name" placeholder="name"/>
<input type="text" name="firstname" placeholder="firstname"/>
<input type="hidden" name="nb_submit" value="" id="nb"/>
<input type="submit" value="OK" onclick="count_nb_submit()"/>
</form>

在 html 表格结束后,我输入了 javascript 代码:

<script type="text/javascript">
var nb=0;
function count_nb_submit()
{
nb ++;
return nb;
document.getElementById('nb').value=nb;
}
</script>

submit.php

<?php
echo $_POST["nb_submit"] ;
?>

在您的 script 中,您 return 在完成您的功能之前。

你应该只在你想停止函数和 return 结果时使用 return。 return 之后的任何内容都不会被读取。

您的代码应如下所示:

<script type="text/javascript">
  var nb=0;
  function count_nb_submit() {
    nb++;
    document.getElementById('nb').value=nb;
    return nb;
  }
</script>

您在将值设置为字段之前使用 return,删除 return 希望它会 work.The 函数应该是 -

function count_nb_submit()
{
    // calculate values
    document.getElementById('nb').value= //the value you want to assign;
}

JS 代码:

<script type="text/javascript">
            var nb = 0;
            function count_nb_submit() {
                nb++;
                var myform = document.getElementById('test');
                document.getElementById("nb").value = nb;
                myform.submit();
            }
        </script>

表格代码:

<form method="post" name="test" action="submit.php"  id="test" target="_blank">
            <input type="text" name="name" placeholder="name"/>
            <input type="text" name="firstname" placeholder="firstname" onblur="count_nb_submit();"/>
            <input type="hidden" name="nb_submit" value="0" id="nb"/>
            <input type="button" value="OK" onclick="count_nb_submit();" />
        </form>
<script type="text/javascript">
var nb = 0;
function count_nb_submit()
{
nb++;
var myform = document.getElementById('test');
document.getElementById("nb").value = nb;
myform.submit();
}
</script>

<form method="post" name="test" action="submit.php" id="test" target="_blank">
<input type="text" name="name" placeholder="name"/>
<input type="text" name="firstname" placeholder="firstname" />
<input type="hidden" name="nb_submit" value="0" id="nb"/>
<input type="button" value="OK" onclick="count_nb_submit();" />
</form>