大家好,我正在尝试在申请表中进行一些验证。
我有 3 个用于不同手机号码的文本框,例如家庭、工作、手机等。我需要 1 个必填字段 3。用户必须输入至少 1 个 3。
有没有办法做到这一点?
大家好,我正在尝试在申请表中进行一些验证。
我有 3 个用于不同手机号码的文本框,例如家庭、工作、手机等。我需要 1 个必填字段 3。用户必须输入至少 1 个 3。
有没有办法做到这一点?
不要将输入值与 "" 或 '' 进行比较。用户可以简单地键入空格。而是检查或修剪空格并检查它是否是有效数字。
<script type="text/javascript">
//Check for all whitespace.
function hasWhiteSpace(s){
return /^\s+$/g.test(s);
}
//Check for valid number
function isNumber(n) {
return !isNaN(parseFloat(n)) && isFinite(n);
}
function validation(){
var mobile = document.getElementById('mobile').value;
var home = document.getElementById('home').value;
var work = document.getElementById('work').value;
var error = 0;
if(!(!hasWhiteSpace(mobile) && isNumber(mobile))){
error += 1;
}
if(!(!hasWhiteSpace(home) && isNumber(home))){
error += 1;
}
if(!(!hasWhiteSpace(work) && isNumber(work))){
error += 1;
}
if(error == 3){
alert("You must enter at least one contact number.");
return false;
}else{
return true;
}
}
</script>
在提交时从您的表单调用验证()。
<form onsubmit="return validation();">
希望这可以帮助
您可以尝试下面给出的代码
<script type="text/javascript">
function checkValidation(){
var mobile = document.getElementById('mobile').value;
var gome = document.getElementById('home').value;
var work = document.getElementById('work').value;
var error_count = 0;
if(mobile == ''){
error_count = error_count + 1;
}
if(home == ''){
error_count = error_count + 1;
}
if(work == ''){
error_count = error_count + 1;
}
if(error_count == 3){
alert("Please add at least one from mobile ,work,home contact no.! ");
return false;
}else{
return true;
}
}
</script>
你可以尝试这样的事情。
谢谢
我希望这对您正在寻找的内容有所帮助。如果您在提交调用validation() 函数时使用html 表单:
<script type="text/javascript">
function validation() {
var a = document.form.phone.value;
var b = document.form.mobile.value;
var c = document.form.home.value;
if(a=="" && b =="" && c =="") {
alert("Please Enter at least one Number");
//add other validation if you need here
document.form.phone.focus(); // focus the first field for example
return false;
}
}
</script>
jQuery 以防万一
HTML:
<form id="form1">
Home <input type="phone" class="phones"><br/>
Work <input type="phone" class="phones"><br/>
Mobile <input type="phone" class="phones"><br/>
<input type="submit">
</form>
JS:
$(function(){
$("#form1").on("submit",function() {
var notempty = $(".phones[value!='']"); // you can extend this test
if (notempty.length<1) {
alert('Please fill at least one number');
$(".phones:first").focus();
return false;
}
return true;
});
});