0
votes

Vérifiez si l'URL a un protocole HTTP (S) SI NE PAS AJOUTER UN AVEC JavaScript

J'essaie de vérifier si l'URL a un protocole ou non, par exemple xxx pré>

Je veux d'abord vérifier si l'URL a un protocole ou non et si href ne contient pas de protocole i Voulez-vous ajouter // code>. p>

Donc pour que l'URL de la première URL soit: p> xxx pré>

Ceci est mon code

p>

 <a id="link" href="www.example.com" ></a>


3 commentaires

Les identifiants doivent être uniques


document.getelementByID ("link1") n'a pas de .length Propriété / il n'y a pas de URLS variable - veuillez consulter le snippet pour y assurer court et démontre le problème.


J'ai mis à jour ma réponse afin que vous puissiez choisir quoi // ou https: // vous voulez


3 Réponses :


0
votes

aperçu de cette

Changer p> xxx pré>

à p> xxx pré>

ou p>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a class="link" href="www.example.com">Change this</a><br/>
<a class="link" href="/page2.html">Do not change this (page)</a><br/>
<a class="link" href="http://www.example.com">Do not change this full url</a><br/>
<a class="link" href="https://www.example.com">Do not change this full url</a><br/>


0 commentaires

0
votes

<a id="link1" href="www.example.com" >Link 1</a>
<a id="link2" href="http://www.example.com" >Link 2</a>
<a id="link3" href="https://www.example.com" >Link 3</a>


5 commentaires

Cool, s'il ya un moyen de supprimer ce contenu // du contenu, l'URL ressemble à ceci: lien 1 (www.example.com) < / a>


@mplungjan oui. C'est l'intendant. C'est ce que l'OP veut: "[I] f href ne contient pas [a] protocole que je veux ajouter // ". "/page1.html" ne contient pas de protocole, donc j'ajoute // .


@Ivannukleus j'ai changé ma réponse afin que le // est toujours présent dans le href mais pas dans le contenu. La balise A est alors lien 1 (www.example.com) Qu'est-ce que vous demandez.


@ miile7 évidemment OP n'a pas pris en compte les liens internes.


@mplungjan hmm. Votre interprétation. Quoi qu'il en soit, il n'est pas difficile de changer. Ajout simplement href.subtr (0, 1)! = "/" (ou href.match (/ ^ \ s * \ //) pour ignorer les espaces) à la si .



0
votes

Il suffit de récupérer tous les éléments d'ancrage que vous souhaitez vérifier à l'aide de la méthode QuerySelectorall () CODE> (Assurez-vous de modifier votre ancre ID code> attribut sur Classe code > Étant donné que les ID dupliqués ne sont pas autorisés), utilisez ensuite le Comprend () la méthode pour vérifier si l'URL contient : // code> ou commence par un personnage comme dites, / code> et si cela ne le fait pas, appendez-le Le // code> au début de l'URL comme ceci:

p>

<a class ="link" href="www.example.com">A</a>
<a class="link" href="http://www.example.com">B</a>
<a class="link" href="https://www.example.com">C</a>
<a class="link" href="/page2.html">D</a>


0 commentaires