进度条填充表单输入
Posted
技术标签:
【中文标题】进度条填充表单输入【英文标题】:Progress bar fill with form inputs 【发布时间】:2015-01-08 15:56:13 【问题描述】:我正在尝试让这个进度条正常工作,但我一直得到错误的结果。问题是当我填写第一个输入(无论输入什么)时,我得到 60% 而不是指定输入的百分比。
$(function ()
$("#progressbar").progressbar(
value: 0
);
$("#profil input").change(function ()
var pbVal = 0;
if ($("#name").val().length > 0) pbVal += 10;
if ($("#prenoun").val().length > 0) pbVal += 10;
if ($("#birthday").val().length > 0) pbVal += 10;
if ($("#telephone").val().length > 0) pbVal += 10;
if ($("#region").val().length > 0) pbVal += 10;
if ($("#ville").val().length > 0) pbVal += 10;
if ($("#etablissement").val().length > 0) pbVal += 10;
if ($("#matiere").val().length > 0) pbVal += 10;
if ($("#etablistud").val().length > 0) pbVal += 10;
if ($("#niveau").val().length > 0) pbVal += 10;
if ($("#branche").val().length > 0) pbVal += 10;
$("#progressbar").progressbar("option", "value", pbVal);
return false;
);
);
请问有什么解决办法吗?这里是jsfiddle
【问题讨论】:
【参考方案1】: 您的下拉列表的.val() 正在返回“默认”,因此长度将大于 0。请尝试将其更改为此
if ($("#name").val().length > 0) pbVal += 10;
if ($("#prenoun").val().length > 0) pbVal += 10;
if ($("#birthday").val().length > 0) pbVal += 10;
if ($("#telephone").val().length > 0) pbVal += 10;
if ($("#region").val() != 'default') pbVal += 10;
if ($("#ville").val() != 'default') pbVal += 10;
if ($("#etablissement").val().length > 0) pbVal += 10;
if ($("#matiere").val().length > 0) pbVal += 10;
if ($("#etablistud").val() != 'default') pbVal += 10;
if ($("#niveau").val() != 'default') pbVal += 10;
if ($("#branche").val() != 'default') pbVal += 10;
【讨论】:
感谢@cspete,它现在工作正常。我也忘记了选择目标,使用 .val() 比使用 .length 更好。再次感谢以上是关于进度条填充表单输入的主要内容,如果未能解决你的问题,请参考以下文章