Aqui sigue el codigo que se me olvide de pegar para que lo puedan comprender mejor...
Código HTML:
<form method="post" action="PHP/frmRegister.php" id="frmRegister" name="frmRegister" accept-charset="utf-8">
<label>
<header>
<h2>Registre-se grátis!</h2>
</header>
</label>
<input type="text" class="frmRegisterText" maxlength="20" value="Nome de usuário" id="frmRegisterUN" name="frmRegisterUN"
onfocus="if (this.value=='Nome de usuário') {this.value = ''; this.style.color='#303030'; this.style.backgroundColor='#FFFFFF';}"
onblur="if (this.value=='') {this.value = 'Nome de usuário'; this.style.color='#C0C0C0';}" />
<input type="text" class="frmRegisterText" value="Informe seu e-mail" id="frmRegisterEM" name="frmRegisterEM"
onfocus="if (this.value=='Informe seu e-mail') {this.value = ''; this.style.color='#303030'; this.style.backgroundColor='#FFFFFF';}"
onblur="if (this.value=='') {this.value = 'Informe seu e-mail'; this.style.color='#C0C0C0';}" />
<input type="text" class="frmRegisterText" value="Confirme seu e-mail" id="frmRegisterEM2" name="frmRegisterEM2" onKeyDown="return frmRegisterValidateBlock (event)"
onfocus="if (this.value=='Confirme seu e-mail') {this.value = ''; this.style.color='#303030'; this.style.backgroundColor='#FFFFFF';}"
onblur="if (this.value=='') {this.value = 'Confirme seu e-mail'; this.style.color='#C0C0C0';}" />
<input type="text" class="frmRegisterText" value="Digite uma senha" id="frmRegisterPW" name="frmRegisterPW"
onfocus="if (this.value=='Digite uma senha') {this.value = ''; this.style.color='#303030'; this.style.backgroundColor='#FFFFFF';
this.style.fontSize='30px'; this.type='password'; this.style.letterSpacing='3px';}"
onblur="if (this.value=='') {this.value = 'Digite uma senha'; this.style.color='#C0C0C0'; this.style.fontSize='18px'; this.type='text'; this.style.letterSpacing='1px';}" />
<input type="text" class="frmRegisterText" value="Confirme sua senha" id="frmRegisterPW2" name="frmRegisterPW2"onKeyDown="return frmRegisterValidateBlock (event)"
onfocus="if (this.value=='Confirme sua senha') {this.value = ''; this.style.color='#303030'; this.style.backgroundColor='#FFFFFF';
this.style.fontSize='30px'; this.type='password'; this.style.letterSpacing='3px';}"
onblur="if (this.value=='') {this.value = 'Confirme sua senha'; this.style.color='#C0C0C0'; this.style.fontSize='18px'; this.type='text'; this.style.letterSpacing='1px';}" />
<select id="frmRegisterCO" name="frmRegisterCO"
onfocus="{this.style.color='#303030'; this.style.backgroundColor='#FFFFFF';}"
onBlur="if (document.getElementById('frmRegisterCountry').value=='Select') {this.style.color='#C0C0C0';}">
<option selected value="Select">Selecione seu país</option>
<option disabled></option>
<option value="af">Afeganistão</option>
<option value="za">África do Sul</option>
<option value="al">Albânia</option>
<option value="de">Alemanha</option>
<option value="ad">Andorra</option>
<option value="ao">Angola</option>
<option value="ag">Antígua e Barbuda</option>
<option value="sa">Arábia Saudita</option>
<option value="dz">Argélia</option>
<option value="ar">Argentina</option>
<option value="am">Armênia</option>
<option value="au">Austrália</option>
<option value="at">Áustria</option>
<option value="az">Azerbaidjão</option>
<option value="bs">Bahamas</option>
<option value="bd">Bangladesh</option>
<option value="bb">Barbados</option>
<option value="bh">Barein</option>
<option value="by">Belarus</option>
<option value="be">Bélgica</option>
<option value="bz">Belize</option>
<option value="bj">Benin</option>
<option value="bo">Bolívia</option>
<option value="ba">Bósnia-Herzegóvina</option>
<option value="bw">Botsuana</option>
<option value="br">Brasil</option>
<option value="bn">Brunei</option>
<option value="bg">Bulgária</option>
<option value="bf">Burkina Faso</option>
<option value="bi">Burundi</option>
<option value="bt">Butão</option>
<option value="...">LOS OTROS PAÍSES</option>
</select>
<label>
<h5>Ao clicar no botão REGISTRAR você declara que leu, entendeu e aceita nossos
<a href="#">Termos e condições</a>
e a nossa
<a href="#">Política de privacidade</a>
.</h5>
</label>
<input type="text" id="frmRegisterError" value="" />
<input type="button" value="REGISTRAR" id="frmRegister_Button" onClick="frmRegisterValidate ()"/>
</form>
Cita: function frmRegisterValidate (){
var frmRegisterError = document.getElementById("frmRegisterError");
var frmRegisterUN = document.getElementById("frmRegisterUN").value;
var frmRegisterUNSp = frmRegisterUN.indexOf (' ');
var frmRegisterEM = document.getElementById("frmRegisterEM").value;
var frmRegisterEMAt = frmRegisterEM.indexOf ('@');
var frmRegisterEMDot = frmRegisterEM.lastIndexOf ('.');
var frmRegisterEMDom = frmRegisterEM.substring (frmRegisterEMDot).length;
var frmRegisterEM2 = document.getElementById("frmRegisterEM2").value;
var frmRegisterPW = document.getElementById("frmRegisterPW").value;
var frmRegisterPW2 = document.getElementById("frmRegisterPW2").value;
var frmRegisterCO = document.getElementById("frmRegisterCO").value;
if (frmRegisterUN == "Nome de usuário")
{
frmRegisterError.value = "Digite um nome de usuário";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterUN.length < 5 || frmRegisterUN.length > 20)
{
frmRegisterError.value = "Seu nome de usuário deve conter de 5 à 20 caracteres";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterUNSp > -1)
{
frmRegisterError.value = "Seu nome de usuário não pode conter espaços";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterEM == "Informe seu e-mail")
{
frmRegisterError.value = "Informe um e-mail para registro";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterEMAt < 1 || frmRegisterEMDot < 3 || frmRegisterEMAt > frmRegisterEMDot || [frmRegisterEMDot - frmRegisterEMAt] < 2 || frmRegisterEMDom <2 || frmRegisterEM.length < 5 || frmRegisterEM.length > 75)
{
frmRegisterError.value = "O e-mail informado é inválido";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterEM2 == "Confirme seu e-mail")
{
frmRegisterError.value = "Digite novamente seu endereço de e-mail";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterEM != frmRegisterEM2)
{
frmRegisterError.value = "Os e-mails informados não conferem";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterPW == "Digite uma senha")
{
frmRegisterError.value = "Digite uma senha";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterPW.length < 6 || frmRegisterPW.length > 15)
{
frmRegisterError.value = "A senha deve ter entre 6 e 15 caracteres";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterPW2 == "Confirme sua senha")
{
frmRegisterError.value = "Digite novamente sua senha";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterPW != frmRegisterPW2)
{
frmRegisterError.value = "As senhas informadas não conferem";
frmRegisterValidateError ();
return false;
}
else if (frmRegisterCO == "Select")
{
frmRegisterError.value = "Selecione seu país";
frmRegisterValidateError ();
return false;
}
document.getElementById("frmRegister").submit();
}
function frmRegisterValidateError () {
document.getElementById("frmRegisterCO").style.mar ginBottom = "10px";
document.getElementById("frmRegisterError").style. visibility = "visible";
document.getElementById("frmRegisterError").style. height = "20px";
}
function frmRegisterValidateBlock (evt)
{
var ctrl=window.event.ctrlKey;
var tecla=window.event.keyCode;
if (ctrl && tecla==86)
{
event.keyCode=0; event.returnValue=false;
// Incrementar código com bloqueio ao botão direito
}
}
La función function frmRegisterValidateError () del archivo JS esta porque frmRegisterError con visibility=hidden en la CSS, y solo se muestra cuando hay esos mensajes de error generados en la validación.
Gracias, Evair.