【发布时间】:2018-03-09 15:46:28
【问题描述】:
我想在有人填写我的表单时,进度条宽度增加20。
<form action="class/action.php" method="post">
<div class="col-sm-3">
<div class="form-group label-floating">
<label class="control-label">Name </label>
<input id="1" type="text" class="form-control pgbar" name="name" required>
</div>
</div>
</form>
<!-- Progress bar -->
<div class="container">
<div class="row">
<div class="col-md-offset-6">
<div class="progress progress-line-primary ">
<div class="progress-bar" id="progressbar" role="progressbar" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 1%;"> </div>
</div>
</div>
</div>
</div>
//javascript
$( "#progressbar" ).progressbar({
value: 0
});
$(".pgbar").change(function() {
var pbVal = 0;
if ($("#1").val().length > 0) pbVal += 20;
if ($("#2").val().length > 0) pbVal += 20;
if ($("#3").val().length > 0) pbVal += 20;
if ($("#4").val().length > 0) pbVal += 20;
if ($("#5").val().length > 0) pbVal += 20;
$( "#progressbar" ).progressbar( "option", "value", pbVal );
return false;
});
我不确定我的 html 或 javascript 是否有问题。感谢您的帮助,不胜感激。
【问题讨论】:
-
有错误吗?
-
看起来您每次触发“更改”时都将 pbVal 重置为 0。把它放在块外。
-
是的,进度宽度保持 1%
-
@GeorgeCampbell 我曾尝试这样做,但我的进度条没有任何反应。
-
@GeorgeCampbell 是的,它被重置为 0,然后立即根据 5 个值完全重新计算
标签: javascript jquery html progress-bar