javascript — передача значения переменной js во входной тип скрытого и затем получить его с переполнением стека

Я хотел бы посчитать количество отправленных форм пользователем с помощью 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"] ;
?>

2

Решение

В вашем script Вы returnпрежде чем вы закончили свою функцию.

Вы должны использовать только return когда вы хотите остановить функцию и вернуть результат. Ничего после возврата не будет прочитано.

Вот как должен выглядеть ваш код:

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

Другие решения

Ты используешь return перед установкой значения в поле удалите возвращаемую надежду, что это будет работать. Функция должна быть —

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

JS CODE:

<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>
0

<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>
0
По вопросам рекламы [email protected]