Geldigheid testen van een URL

In het artikel Geldigheid testen van een e-mail adres wordt besproken hoe je van een e-mail adres kunt nagaan of het correct gevormd is. Dat gebeurt met een reguliere expressie. Op deze bladzijde wordt besproken hoe je zoiets kunt doen voor de URL van een webpagina.

Hieronder zie je een formuliertje met één tekstveld. Als je daar de URL van een webpagina invult en dan op de knop Test! drukt, komt er een alert op het scherm die zegt of de URL correct is gevormd of niet.
Je moet ook het protocol invullen (http://, https:// of ftp://), anders is de URL bij voorbaat fout. Je mag ook een query-string meegeven, maar ook dat hoeft niet.
Een query-string is een vraagteken gevolgd door een reeks karakters, die wordt gebruikt om gegevens over te brengen van de ene webpagina naar de andere. Zie bijvoorbeeld het item HTML met parameters.

Vul hier een URL in:

Op deze pagina staat beschreven hoe je dat aanpakt. De code staat onderaan deze bladzijde. Je kunt hem ook downloaden voor je eigen gebruik.

Gebruik:

De code ziet er als volgt uit:
 
(Zet dit in de <HEAD>).

<script>
function TestTheURL() {
  // Check de juistheid van het e-mail adres. Dit gebeurt met een Reguliere Expressie.
  // Gebaseerd op een code-snippet op snippets.dzone.com
  // Author : Rafael Trindade da Silva, rafaeltds at gmail dot com
  if (VerifyUrl_check(document.f.t.value)) {
    window.alert('De opgegeven URL is juist...')
  } else {
    window.alert('De opgegeven URL is NIET juist!')
    document.f.t.focus();
  }
}
function VerifyUrl_check(str) {
  str=str.replace(/(^\s*)|(\s*$)/g, "");
  var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
  return regexp.test(str)
}
</script>
(Zet dit in de <BODY>, op de plaats waar het formulier moet komen)
<form action="JavaScript:TestTheURL();" name="f" id="f">
<table border="1" cellspacing="1" cellpadding="5" align="center" bgcolor="#DDFFDD" frame="box" rules="none"><tr>
  <td colspan="2" align="center">
    Vul hier een URL in:<br>
    <input type="text" name="t" size="30" maxlength="50"></td>
</tr><tr>
  <td align="center">
    <input type="submit" value=" Test! "></td>
    <td align="center"><input type="reset" value="Opnieuw..."></td>
</tr></table></form>

Downloaden:
 
Druk op de knop: Download deze code  File: voorb327.zip, 850 bytes.

 
terug

html-327; Laatste wijziging: 27 april 2020