[Gelöst]Einfache Telefonvalidierung (regEx)

24. Juni 2014 08:41

Hallo

Ich habe mir einen kleinen Code geschrieben, siehe unten, damit die Telefonnummer formatiert wird(Format: +41 32 355 12 25) Ich habe diese Funktion im OnChange des Feldes. Der Code funktioniert soweit auch, nur sobald das Format stimmt, erscheint folgende Fehlermeldung, siehe Bild 1. Kann mir jemand einen Tipp geben, weshalb diese Meldung kommt? Danke

Freundliche Grüsse
Conan

Code:
function PruefeTel()
{

   var Number = Xrm.Page.getAttribute("new_telefonsring");
   var Wert = Number.getValue();

      var regEx = /^\+41 [1-9]{1,2} [0-9]{1,3} [0-9]{1,2} [0-9]{1,2}$/;
      var matches_array = Wert.match(regEx);
      Number.setValue(matches_array);
}
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von conan1 am 25. Juni 2014 08:16, insgesamt 1-mal geändert.

Re: Einfache Telefonvalidierung (regEx)

24. Juni 2014 18:10

Hallo,
ich finde die Meldung sehr eindeutig. Du versuchst in einem Feld, in dem nur Zahlen und Leerzeichen eingegeben werden dürfen, ein + Zeichen einzufügen.

Re: Einfache Telefonvalidierung (regEx)

25. Juni 2014 08:14

Hallo,

Danke für den Hinweis. Nun habe ich den Code umgeschrieben, siehe unten; Jetzt funktioniert er. Danke


Code:
//*** Formatieren von Telefonnummer ***


function formatPhoneNumber()
{
  var Number = Xrm.Page.getAttribute("telephone1");
  var Wert = Number.getValue();

    if(Wert != null)
   {
      var regEx = /^\+41 [1-9]{1,2} [0-9]{1,3} [0-9]{1,2} [0-9]{1,2}$/;
      var matches_array = Wert.match(regEx);

      if(matches_array)
      {
         Number.setValue(matches_array[0]);
         Xrm.Page.getControl("telephone1").clearNotification();
      }
      else
      {
         Number.setValue(matches_array);
         Xrm.Page.getControl("telephone1").setNotification("Ungültige Nummer, bitte verwenden Sie dieses Format +41 12 345 67 89");
      }
   }   
   else
   {
      // Abbruch kein Wert vorhanden;
   }
}