Campo numerico form facebook

  • Creatore Discussione Creatore Discussione tgat
  • Data di inizio Data di inizio

tgat

Nuovo Utente
3 Nov 2012
17
0
1
Salve a tutti,
premetto che sono nuovo con javascript e vorrei utilizzare Il plugin di Facebook denominato "Registration"
https://developers.facebook.com/docs/plugins/registration/
e vorrei validare il campo Numero di telefono a cui vorrei aggiungere questo set di caratteri:
._-) +(:/
c'è anche uno spazio vuoto
di seguito il codice javascrip perfettamente funzionante (che tra le altre ha l'alert che sul plugin di facebook non è necessario):

HTML:
<form name="modulo" id="modulo" onSubmit="return controllo();" method="post" action="paginadiprova.php"> 
Numero
<input name="numero" type="text" id="numero" size="30" /> 
<br /> 
<input type="submit" name="Submit" value="Invia" /> 
</form>
<script language="JavaScript"> 
function controllo(){ 
with(document.modulo) { 
var ckNumero = /^[\d._\-\) \+\(:\/]+$/;
if(numero.value=="") {
alert("Errore: compilare il campo numero");
numero.focus();
return false;
}else if(!ckNumero.test(numero.value)) {
alert("Errore: Numero non valido ");
numero.focus();
return false;
}
} 
return true; 
} 
</script>

che vorrei integrare nel plugin di facebook:

HTML:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<div id="fb-root"></div>
<script>
* window.fbAsyncInit = function() {
* * FB.init({appId: '172977976174862', status: true, cookie: true, xfbml: true});
* };
* (function() {
* * var e = document.createElement('script'); e.async = true;
* * e.src = document.location.protocol +
* * * '//connect.facebook.net/it_IT/all.js';
* * document.getElementById('fb-root').appendChild(e);
* }());
</script>
<fb:registration redirect-uri="" 
 fields='[
   {"name":"name"},
   {"name":"numero","description":"Numero di telefono","type":"text"},
]' 
 onvalidate="validate"></fb:registration> 
<script> 
function validate(form) {
  errors = {};
  if (form.numero !== "1234567890") {
    errors.numero = "compila il campo";
  }
   return errors;
}
</script>

un grazie anticipato a chi vorrà rispondermi :)
 
Ultima modifica di un moderatore:
Ciao,

non puoi sostituire questo (che è errato)

Codice:
function validate(form) {
  errors = {};
  if (form.numero !== "1234567890") {
    errors.numero = "compila il campo";
  }
   return errors;
}

è true se scrivi 1234567890 (scritto correttamente) 0987654321 o qualsiasi altra combinazione è false parte il messaggio d'errore.

sua la regexp sopra, anche se non capisco l'utilizzo di quei caratteri in un campo numerico

Valeria.
 
Ciao,

non puoi sostituire questo (che è errato)

Codice:
function validate(form) {
  errors = {};
  if (form.numero !== "1234567890") {
    errors.numero = "compila il campo";
  }
   return errors;
}

è true se scrivi 1234567890 (scritto correttamente) 0987654321 o qualsiasi altra combinazione è false parte il messaggio d'errore.

sua la regexp sopra, anche se non capisco l'utilizzo di quei caratteri in un campo numerico

Valeria.
si, grazie lo so che è errato infatti volevo sostituire la regola con un'altra che permettesse l'inserimento di numeri (qualsiasi) + il set di caratteri :
._-) +(:/
ma siccome non conosco bene il javascript non so come fare, pertanto gradirei qualche suggerimento, grazie :)
 
Ciao,

non hai già una regexp che fa questo,


var ckNumero = /^[\d._\-\) \+\(:\/]+$/;

se la metti al posto di !== "123...0";

Valeria.
 

Discussioni simili