Comment passer une string en argument en JS?
exotyk
Messages postés
2
Statut
Membre
-
exotyk Messages postés 2 Statut Membre -
exotyk Messages postés 2 Statut Membre -
Bonjour,
Voilà, je suis capable de passer la variable i (un chiffre) comme argument à la fonction Javascript openchannel(x), cependant je n'arrive pas à passer la variable x (une string)...
J'ai mis une alert sur la fonction openchannel pour vérifier si le code était exécuté, et rien ne se passe à moins de remplacer "<a href='javascript:openchannel(" + x + ");'>" par "<a href='javascript:openchannel(" + i + ");'>"... j'ai tenté d'utiliser les escape characters en faisant à la place: "<a href='javascript:openchannel(\'" + x + "\');'>" afin de passer une string proprement, cependant cela ne fonctionne pas plus; quand je passe ma souris par-dessus le lien j'obtiens en bas dans mon navigateur (Chrome) ceci: javascript:openchannel(
... comme si je n'arrivais pas à faire agir \' tel que demandé.
Voici mes 2 fonctions, updatekeywords() étant éxécuté en premier:
function openchannel(x)
{
alert("trying to open: " + x);
}
function updatekeywords()
{
document.getElementById("keywords").innerHTML = "";
var message = document.getElementById("tcontent").value;
var word=message.split(" ");
var z = 32;
for (i=0;i<=z;i++){
if (word[i]){
var x1 = word[i];
var x = x1.toString();
document.getElementById("keywords").innerHTML += "<a href='javascript:openchannel(" + x + ");'>" + x + "</a> ";
}
}
}
Un autre exemple (celui-ci est le code complet de la page) reprenant la même syntaxe et le même problème:
<html>
<head>
<script type="text/javascript">
function openchannel(x)
{
alert("trying to open: " + x);
}
</script>
<script type="text/javascript">
function fx()
{
var x = "cobra";
document.getElementById("keywords").innerHTML += "<a href='javascript:openchannel(" + x + ");'>" + x + "</a> ";
}
</script>
</head>
<body>
<input type="button" onClick="fx()" value="test"><br>
<span id="keywords"></span>
</body>
</html>
Lorsque l'on clique sur le lien cobra, mon but est que la fonction openchannel(x) ouvre une box d'alerte mentionnant "trying to open: cobra". Je ne comprends pas, c'est pourtant tout simple...
Voilà, je suis capable de passer la variable i (un chiffre) comme argument à la fonction Javascript openchannel(x), cependant je n'arrive pas à passer la variable x (une string)...
J'ai mis une alert sur la fonction openchannel pour vérifier si le code était exécuté, et rien ne se passe à moins de remplacer "<a href='javascript:openchannel(" + x + ");'>" par "<a href='javascript:openchannel(" + i + ");'>"... j'ai tenté d'utiliser les escape characters en faisant à la place: "<a href='javascript:openchannel(\'" + x + "\');'>" afin de passer une string proprement, cependant cela ne fonctionne pas plus; quand je passe ma souris par-dessus le lien j'obtiens en bas dans mon navigateur (Chrome) ceci: javascript:openchannel(
... comme si je n'arrivais pas à faire agir \' tel que demandé.
Voici mes 2 fonctions, updatekeywords() étant éxécuté en premier:
function openchannel(x)
{
alert("trying to open: " + x);
}
function updatekeywords()
{
document.getElementById("keywords").innerHTML = "";
var message = document.getElementById("tcontent").value;
var word=message.split(" ");
var z = 32;
for (i=0;i<=z;i++){
if (word[i]){
var x1 = word[i];
var x = x1.toString();
document.getElementById("keywords").innerHTML += "<a href='javascript:openchannel(" + x + ");'>" + x + "</a> ";
}
}
}
Un autre exemple (celui-ci est le code complet de la page) reprenant la même syntaxe et le même problème:
<html>
<head>
<script type="text/javascript">
function openchannel(x)
{
alert("trying to open: " + x);
}
</script>
<script type="text/javascript">
function fx()
{
var x = "cobra";
document.getElementById("keywords").innerHTML += "<a href='javascript:openchannel(" + x + ");'>" + x + "</a> ";
}
</script>
</head>
<body>
<input type="button" onClick="fx()" value="test"><br>
<span id="keywords"></span>
</body>
</html>
Lorsque l'on clique sur le lien cobra, mon but est que la fonction openchannel(x) ouvre une box d'alerte mentionnant "trying to open: cobra". Je ne comprends pas, c'est pourtant tout simple...
A voir également:
- Comment passer une string en argument en JS?
- Passer en azerty - Guide
- Passer a windows 10 - Accueil - Mise à jour
- Passer un texte en majuscule - Guide
- Comment trouver le mot de passe wifi sur son téléphone - Guide
- Passer à windows 11 gratuitement - Guide