検証コードによって制約されたフォームがあります。元。userNameには英字が必要です。したがって、trueまたはfalseを返します。
function isAlphapet()
{
var alphaExp = /^[a-zA-Z]+$/;
var namee=document.validation.userName.value;
var nalt=document.getElementById('name1');
if(namee!="")
{
if(!namee.match(alphaExp))
{
nalt.innerHTML="<font color='red'> Invalid Name: " + document.validation.userName.value + "</font>";
document.validation.userName.focus();
document.validation.userName.value="";
//This will remove the success class if the user tries to modify it incorrectly.
document.getElementById("userName").className = document.getElementById("userName").className.replace(" validationSuccess", "");
//This is calling the css class name validationError to color the text box border in red if there is an error.
//Leaving the replacing attribute empty incase the user hasn't input the correct string.
document.getElementById("userName").className = document.getElementById("userName").className + " validationError";
return false;
}else{//if it's validated correctly
nalt.innerHTML="";
//The text box should be green.
document.getElementById("userName").className = document.getElementById("userName").className + " validationSuccess";
return true;
}
}
else if(namee.length==0) { //if the user leaves it blank.
nalt.innerHTML="<font color='red'> Enter Name</font>";
document.getElementById('name1').focus();
document.getElementById("userName").className = document.getElementById("userName").className.replace(" validationSuccess", "");
document.getElementById("userName").className = document.getElementById("userName").className + " validationError";
//The above is explained on line 27+.
return false;
}
}
そして、userNameテキストボックスのフォームには次のものがあります。
Your Name:<br /><input name="userName" id="userName" onBlur="isAlphapet()" type="text" size="20" maxlength="25" /><br />
上記がtrueになったら、ボタンを有効にする必要があります。しかし、何らかの理由で、本体内のJScriptでisAlphapetを使用しようとすると、何も返されません。
誰かが解決策を持っていますか?
とても有難い。
編集:
Sriniに返信していただきありがとうございます。
うーん。変更を加えた後、検証機能全体が機能しなくなることはありませんでした。私が達成しようとしていることは、それがどのように聞こえるかよりも少し単純です。ifステートメントまたは次のようなものが必要です。
if (isAlphapet()== true && emailvalid()== true && browserValid()==true){
document.validation.sumb.disabled=false;
}
else{
document.validation.subm.diabled=true;
}
ここで、検証は私のフォームの名前です。私はこれをヘッダーと本文で使用しようとしました。どちらの関数の戻り値も認識しません。ただし、ボタンの無効化と有効化は、/formタグの後でのみ機能します