我需要验证表单,我希望每个输入必须有6个以上的字符。
以下脚本适用于0个字符。
如何编辑它以将最小字符数限制设置为6?
<script>
function validateForm(formId)
{
var inputs, index;
var form=document.getElementById(formId);
inputs = form.getElementsByTagName('input');
for (index = 0; index < inputs.length; ++index) {
// deal with inputs[index] element.
if (inputs[index].value==null || inputs[index].value=="")
{
alert("Field is empty");
return false;
}
}
}
以下是表格:
<form name="myForm" id="myForm" method="post" action="" onsubmit="return validateForm('myForm');" style="margin-bottom:10px;" _lpchecked="1">
<div id="InputsWrapper">
<div>
<input type="text" name="mytext[]" id="field_1" value="http://">
<a href="#" id="AddMoreFileBox" style="font-size:12px;margin:0 0 0px 0;"><img src="images/plus.png" style="margin-left:10px;height:24px;">
</a>
</div>
</div>
<div style="height:10px;"></div>
<input type="submit" style="border:none;background-color:#ff9900;padding:10px 30px 10px
30px;font-size:24px;font-weight:bold;color:#FFF;" value="CONTINUE">
</form>
答案 0 :(得分:2)
在循环内部,检查value
length
if (inputs[index].value==null || inputs[index].value=="" || inputs[index].value.length < 6) {
alert("Field is not 6 characters minimum!");
return false;
}
答案 1 :(得分:0)
您可以使用以下方法检查字段是否包含6个字符:
if (document.forms["name"]["field name"].value < 6).
答案 2 :(得分:0)
我建议将CSS类(本例中为“InputClassName”)分配给要验证的输入 - 然后将代码更改为:
inputs = form.getElementsByClassName('InputClassName');
for (index = 0; index < inputs.length; ++index) {
if (inputs[index].value==null || inputs[index].value=="" || inputs[index].value.length < 6))
{
alert("Field must be 6 characters or more");
return false;
}
}
这种方法的优点是你可以添加没有“InputClassName”类的单选按钮或复选框 - 它们的值小于6个字符,你的逻辑仍然有效。使用当前设置,您的逻辑将会中断。