0
votes

Comment appendez la variable JavaScript à la balise de script HTML?

J'ai des javascripts où je dois avoir un nom d'hôte variable depuis que je vais exécuter mes scripts dans dev, tester et prod. Comment obtenir un nom d'hôte variable dans la balise de script JavaScript?

Je ne peux pas créer cette étiquette de script à l'aide de JavaScript lui-même. L'exemple ci-dessous ne fonctionne pas. Qu'est-ce que? P>

p>

<!DOCTYPE html>
<html>
<body>
<script>
var hostname="sample.com";
</script>
<script src="https://" + hostname + "/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
</body>
</html>


0 commentaires

4 Réponses :


0
votes

Vous pouvez donner un identifiant à la balise et ensuite faire quelque chose comme ceci xxx xxx


2 commentaires

Cela génère complètement une nouvelle URL à droite, mais j'ai juste besoin de remplacer uniquement " ajax.googleapis.com "


@Ganeshputta j'ai édité la réponse, voyez si cela aide :)



3
votes

Vous pouvez ajouter de manière dynamique votre script à votre page après la construction de l'URL complète du SCR. Voici un exemple:

p>

<!DOCTYPE html>
<html>

<body>
  <script src="%HOST_NAME%/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  <script src="%HOST_NAME%/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  <script src="%HOST_NAME%/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  <script>
    var hostname = "sample.com";
    var scripts = document.getElementsByTagName('script');
    [ ...scripts ].forEach(script => {
      script.src = script.src.replace('%HOST_NAME%', hostname);
    })
  </script>
</body>

</html>


2 commentaires

Merci, mais j'ai trop de tags de script dans ma page HTML, je ne peux donc pas créer toutes ces balises de script à l'aide de JavaScript.


Vous pouvez si vous utilisez une fonction dans une fonction pour ajouter un script à votre page. Sinon, vous pouvez analyser toutes vos balises de script sur la charge de la page et remplacer l'attribut SRC avec le nouveau. Si vous souhaitez modifier uniquement des tags de script, vous pouvez utiliser des attributs de classe pour cibler uniquement celle qui doit être mise à jour



-1
votes

<!DOCTYPE html>
    <html>
        <body>
            <a href="" id="link"></a>

            <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
                var hostname="sample.com";
                //javascript 
                document.getElementById("link").href = hostname;
                //jquery code 
                $("#link").attr("href",hostname);
            </script>
        </body>
</html>


0 commentaires

-2
votes

Enregistrez votre script à l'aide de JavaScript. Vous pouvez utiliser comme celui-ci xxx


0 commentaires