我目前正在使用jQuery Form Validator(http://formvalidator.net/#home)。我目前有三个输入框输入电话号码(3个号码,3个号码,4个号码)。由于电话号码是可选的,所有三个输入框都是可选的(data-validation-optional =“true”)。验证(确保只输入数字)对于所有三个框都正常工作,但我的问题是验证插件不检查以确保所有三个框都已填充。这是一个问题,因为用户可以填写一个框但留下另外两个空的。jQuery Form Validator - 如何使用javascript更改data-validation-optional属性?
我可以解决这个问题的方法是检查表单提交时,如果所有三个框都有空字符串。如果是这样而不是什么都不做,但是如果只提交一个框而不是强制所有三个框(data-validation-optional =“false”)。
我在更改使用JavaScript的输入的内嵌数据验证可选属性时遇到问题。当我使用document.getElementById(“phone1”)。data-validation-optional =“false”时,它给了我一个javascript错误。
这里是我当前的代码:
输入:
<input type="text" id="phone1" name="phone1" tabindex="21" maxlength="3" value="" data-validation="custom" data-validation-regexp="^([0-9]{3})$" data-validation-optional="true" style="position:relative; display:block; left:24px; top:31px; width: 76px; height: 44px; text-align: center; padding-left: 0px;" data-validation-error-msg="- Mobile # is incorrect.">
的javascript:
$('#phone1')
.bind('validation', function() {
if(String(document.getElementById('phone1').value) == "" &&String(document.getElementById('phone2').value) == "" && String(document.getElementById('phone3').value) == ""){
//return true - all empty
document.getElementById("phone1").data-validation-optional = "true";
}
else{
if(String(document.getElementById('phone1').value) == "" || String(document.getElementById('phone2').value) == "" || String(document.getElementById('phone3').value) == ""){
document.getElementById("phone1").data-validation-optional = "false";
//return false - at least one is empty
}
else{
document.getElementById("phone1").data-validation-optional = "true";
//return true - all filled
}
}
})
任何帮助,将不胜感激!谢谢!
您可以通过使用类型=“电话”和模式 –
你能否澄清你有什么问题,做到这一点?您提到您在更改内联数据验证可选属性时遇到了问题。你想把它改成什么?目前发生了什么?您可以分享更多的信息和代码来澄清您遇到的问题,这将有助于您更快得到答案! –