2 回答

TA貢獻1853條經驗 獲得超18個贊
一旦每個正則表達式都被驗證為正確,用戶可以單擊 recordHistory 按鈕,然后會彈出一個警告說“數(shù)據(jù)輸入正確”我使用此代碼來獲得我正在尋找的結果:-
<!DOCTYPE html>
<html>
<body>
<form action="#">
<div id="fullpage">
<tr>
<td class="Button" id="Button" colspan="3"><span class="buttonBG" onclick="recordHistory();">Record</span></td>
</tr>
<span id="recordConfirm"> </span>
</div>
</form>
<script>
function recordHistory(){//function to validate input text fields on client side, via record button
var fName = document.getElementById("firstName").value;
var lName = document.getElementById("lastName").value;
var fNameRegExp = /^[a-zA-Z\s\'\-]{2,25}$/;
if( fName ==='' || lName ===''){
alert("Please fill all text fields...!!!!!!");
return false;
}
else if(fName === fNameRegExp){
//First Name true
}
else{
alert("input data is correct");
return true;
}
}
</script>
</body>
</html>

TA貢獻1859條經驗 獲得超6個贊
我確實看到您已經在使用 validateFirstName 和 validateLastName 函數(shù)對名字和姓氏進行驗證。
我相信您會使用該字段的任一 onfocusout 來執(zhí)行此操作。
再次單擊按鈕時進行另一次驗證可能是雙重工作。因此,如果 FirstName 或 LastName 驗證在這些各自的功能上失敗,我建議您禁用該按鈕。
添加以下行:
document.getElementById("somebuttonid").disabled = true;
因此,在這兩個字段按照您的意愿進行驗證之前,提交按鈕將被禁用。這也比用警報打斷他們更好的用戶體驗。
讓我知道這是否可行。
添加回答
舉報