La fonction de JS vérifie régulièrement si l'entrée est une URL est également très courante dans les pages Web. Lorsque vous remplissez des pages d'accueil personnelles avec des liens et des formulaires amicaux, utilisez JavaScript pour vérifier s'il s'agit d'une URL.
Ce test n'est pas facile à écrire, il est donc préférable d'utiliser des expressions régulières pour s'authentifier.
Il est stipulé que l'entrée ne peut commencer qu'avec http: // et https: //, et doit être une URL.
Certaines personnes disent, pourquoi les pages Web comme www.1.com ne peuvent-elles pas travailler?
Il s'agit d'éviter le fait que lorsque vous utilisez l'entrée de l'utilisateur pour construire un hyperlien, si l'attribut HREF dans la balise A ne peut pas rencontrer quelque chose http: // ou https: //, il sera considéré comme le répertoire racine et écrit ensuite cette adresse derrière l'url de votre site Web, puis sautera. Tout le monde devrait le savoir. Par exemple, si <a href = "www.1.com"> xxx </a>, mon URL est http: // localhost. Ensuite, après avoir cliqué sur la balise A affichée comme xxx, vous sautez à l'emplacement http: //localhost/www.1.com, bien sûr, c'est faux.
Par exemple, dans la zone de texte suivante, comment utiliser les expressions régulières pour obliger les utilisateurs à entrer l'URL à commencer par http: // et https: //?
1. Tout d'abord, c'est une disposition simple, il va sans dire:
<! Doctype html public "- // w3c // dtd xhtml 1.0 transitional // en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"><html xmlns = "http://www.w3.org/1999/xhtml"> <éad> <meta http-equiv = "contenu-type" contenu = "text / html; charset = utf-8" /> <itle> intr tiled document </ title> </ head> <body> the url doit commencer avec HTTP: // Title> </-head>: et le corps doit commencer avec HTTP: // Titre> </-head>: et le corps doit commencer avec HTTP: // Tit Une url ^ _ ^! <br /> <input type = "text" id = "url" /> <button onclick = "checkUrl ()"> confirmer </ bouton> </body> </html>
2. Le second est le script, il n'est en fait pas nécessaire de le dire. La clé est l'expression régulière:
<Script> Fonction CheckUrl () {var url = document.getElementById ("url"). valeur; var reg = / ^ ([hh] [tt] {2} [pp]: //// | [hh] [tt] {2} [pp] [ss]: ////) (([a-za-z0-9- ~] +) /.) + ([a-za-z0-9- ~ //]) + $ /; if (! reg.test (url)) {alert ("Cette URL ne commence pas par http: // https: //, ou n'est pas une URL!"); } else {alert ("entrée réussie"); }} </ script>Dans: var reg = / ^ ([hh] [tt] {2} [pp]: //// | [hh] [tt] {2} [pp] [ss]: ////) (([a-za-z0-9- ~] +) /.) + ([A-za-z0-9- ~ //]) + $ /.
1. Dans JavaScript, puisque toutes les variables sont VAR, l'expression régulière doit être écrite en deux barres obliques, /.../, puis les barres obliques / dans l'expression régulière doivent être écrites comme //
2. ^ Signifie qu'il doit commencer par ..., [] signifie une unité de test, c'est-à-dire quelque chose qu'un certain caractère peut accueillir. Par exemple, ^ ([hh] [tt] {2} [pp]: //// | [hh] [tt] {2} [pp] [ss]: ////), ce qui signifie qu'il nécessite qu'il commence par http: // ou https: //. | Oui, le premier caractère est H ou H, les deuxième et troisième caractères sont [TT], {2} signifie que l'inclusion de ce caractère et du 1 caractère après qu'il doit être [TT], et ainsi de suite
3. ([A-ZA-Z0-9- ~] +) signifie que l'inclusion de ce caractère et de ses caractères suivants doit être majuscules, des lettres minuscules, des chiffres, moins des signes-ou ~
Caractère + signifie: Faites correspondre les caractères avant le + signe 1 ou n fois, par exemple: / a + / match 'a' dans "bonbons" et tout "a" dans "caaaaaaandy".
4. Par conséquent (([A-ZA-Z0-9- ~] +) /.) + Signifie xxx. Cette chose se terminant par un point doit apparaître au moins une fois avant le personnage ([a-za-z0-9- ~ //]) + $.
5. $ signifie qu'il doit se terminer par des lettres majuscules, des lettres minuscules, des chiffres, moins des signes -, ~, /
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.