FAQ ASP
FAQ ASPConsultez toutes les FAQ
Nombre d'auteurs : 6, nombre de questions : 44, dernière mise à jour : 15 juin 2021
Tout d'abord un petit rappel : ASP est interprété côté serveur, puis le résultat HTML est envoyé au client (navigateur). Par résultat HTML, on entend le code HTML ainsi que les langages client que sont le javascript et le vbscript (uniquement IE). Il est donc tout à fait possible d'exploiter le contenu d'une variable ASP dans du javascript.
Un exemple simple pour bien comprendre :
<%
Dim
mavariable_string_asp, mavariable_int_asp
mavariable_string_asp =
"Ceci est un test"
mavariable_int_asp =
50
%>
<script type
=
"text/javascript"
>
var mavariable_string_javascript = "<%
Response
.Write
mavariable_string_asp %>
" ;
var mavariable_int_javascript = <%
Response
.Write
mavariable_int_asp %>
;
</script>
Un exemple un peu plus complexe : copie d'un tableau vbscript serveur dans un tableau javascript client
<%
Dim
montab_asp ' déclaration de la variable qui va recevoir le tableau vbscript
montab_asp =
Array
(
"élément 1"
, "élément 2"
, "élément 3"
) ' définition du tableau
%>
<script type
=
"text/javascript"
>
var montab_javascript = new Array ; { déclaration de la variable tableau javascript}
<%
Dim
cpt ' déclaration de la variable qui va servir à incrémenter le tableau javascript et à parcourir le tableau asp
For
cpt=
0
to
Ubound
(
montab_asp) ' Ubound(montab_asp) renvoit la limite sup du tableau
%>
montab_javascript[<%
=
cpt %>
] = "<%
=
montab_asp
(
cpt) %>
" ;
<%
Next
%>
</script>
Regardez maintenant le code source dans le navigateur, vous obtenez votre tableau javascript comme si vous l'aviez codé en dur.
La réponse est tout simplement non !
En effet, javascript est exécuté sur le client, c'est à dire dans le navigateur, et ASP est exécuté sur le serveur. Pour utiliser le contenu d'une variable javascript dans du code ASP, il faut pour cela envoyer ce contenu au serveur, qui va le récupérer et le traiter via du code ASP. Vous avez donc deux solutions : par la méthode GET (lien, formulaire) ou bien la méthode POST.