我的html表单中有一个8个文本框,其中包含div
ids fa1
到fa8
。默认情况下可以看到两个,隐藏了6个。我正在使用两个按钮addfa
和removefa
来显示和隐藏div。我需要在表单提交后保留div计数,并且我在html下面使用html来更新html中的value
(默认情况下它是3,如果我显示一个隐藏的div,它将变为4 ..)
html代码:
<div class="add_remove_column">
<?php
if(isset($_POST['countfa'])){
$valueid = $_POST['countfa'];
?>
<input type="hidden" id="countfa" name="countfa" value="<?= $valueid ?>" readonly>
<?php
}else{
?>
<input type="hidden" id="countfa" name="countfa" value="3" readonly>
<?php
}
?>
<button type="button" onClick="AddNewFa();" id="addfa" > + Add New FA </button>
<button type="button" onClick="RemoveNewFa();" id="removefa" disabled="disabled"> - Remove FA</button>
</div>
javascript for add button:
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);
}
if( facount ==9 )
{ $('#addfa').attr('disabled','disabled');}
if( facount ==4 )
{ $('#removefa').removeAttr("disabled");}
}
根据javascript,如果facount值为4及以上,则假设从disabled
按钮中删除removefa
属性。
我看是否选择了另外一个div,countfa
在表单提交后更改为4,但removefa
按钮仍然处于禁用状态。它假设处于启用状态,这里出了什么问题?
答案 0 :(得分:1)
您需要检查是否大于或等于。还需要使用.prop()
来设置禁用属性
if (facount >= 4) {
$('#removefa').prop('disabled', false);
}
或尝试
$('#removefa').prop('disabled', facount < 4);