我的 html 表单中总共有 8 个文本框。我默认显示 2 个文本框,其中 6 个设置为 display:none
。所有这些文本框都用 div
包裹起来code> (命名为 fa1
到 fa8
)。我添加了一个按钮,每次单击时都会显示隐藏的 div(名称从 fa3
到 fa8
)。
html代码:
<input type="hidden" id="countfa" name="countfa" value="3" readonly>
<button type="button" onClick="AddNewFa();" id="addfa" > + Add New FA </button>
我使用下面的 javascript 来监听点击和计数并显示隐藏的 div
function AddNewFa()
{
var facount = parseInt($('#countfa').val(),9) ;
if( facount < 9)
{
facount = facount+1;
for(i=3;i<9;i++)
{
if( i<facount )
$('#fa'+i).slideDown("fast");
else
$('#fa'+i).slideUp("fast");
}
$('#countfa').val(facount);
}
}
我在这里面临的问题是在表单提交后 countfa
值更改回默认值 3。因此,如果我在单击按钮 countfa 后在表单提交之前显示了所有隐藏的 div
值将为 8,表单提交后将再次为 3。无论如何,我可以将 countfa
值保留为 8 吗?即使在表单提交之后?
最佳答案
我不确定我是否理解正确,但我过去遇到过类似的问题,而且我很容易解决了它。您可以简单地检索 countfa 的值,然后设置其值。
由于您使用的是 php,因此只需使用此代码即可
注意:我假设您使用 POST,如果您使用 GET,则只需替换 $_POST
与 $_GET
当您到达打印 countfa div 的代码部分时,只需使用此代码(我假设您使用 html 并将引入 php 内联。否则只需删除 <?php ?>
标签
<?php
if(isset($_POST['countfa'])){
echo "<input type=\"hidden\" id=\"countfa\" name=\"countfa\" value=\"$_POST['countfa']\" readonly>";
}else{
echo "<input type=\"hidden\" id=\"countfa\" name=\"countfa\" value=\"3\" readonly>";
}
?>
关于javascript - 表单提交后保留 div 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19205870/