Asp.net - ajouter un bloc de script javascript dans une page asp.net

0/5 (3 avis)

Snippet vu 27 051 fois - Téléchargée 35 fois

Contenu du snippet

Un ajout de bloc de script Client (javascript) peut poser problème, car celui-ci ne doit être fait qu'une seule fois.
Or, si le script en question est inclu dans un User control qui sera lui-même inséré dans un datarepeater ou datagrid, le code javascript doit rester unique.

Ainsi la méthode est de passer par un couple de fonction .NET qui associera un bloc avec une Clé et testera alors la présence de cette clé.

Source / Exemple :


'-- Premier exemple avec un DIV à ajouter dans une page .NET

Dim DeclarationDIV As String = "<div id='overDiv' style='position:absolute; visibility:hidden; z-index:1000;'></div>"

If Not Page.IsClientScriptBlockRegistered("DeclarationDIV") Then
 Page.RegisterClientScriptBlock("DeclarationDIV", DeclarationDIV)
End If

'-- Second exemple avec un ajout de référence vers un fichier .JS dans une page .NET

Dim IncludeScript As String = ControlChars.CrLf & "<script language='javascript' src='LeRepertoire/LeFichier.js'></script>"

If Not Page.IsClientScriptBlockRegistered("DeclarationFichierJS") Then
 Page.RegisterClientScriptBlock("DeclarationFichierJS", includeScript)
End If

'-- Troisième exemple avec un ajout de fonction JS dans une page .NET (Issu de la MSDN)

Dim scriptString as String = "<script language=JavaScript> function DoClick() {"
 scriptString += "myForm.show.value='Welcome to Microsoft .NET'}<"
 scriptString += "/"
 scriptString += "script>"
      
If(Not IsClientScriptBlockRegistered("clientScript"))
 RegisterClientScriptBlock("clientScript", scriptString)
End If

Conclusion :


On peut utiliser la même méthode avec les liaison vers un fichier CSS par exemple.

Bon coding.

Romelard Fabrice (Alias F___)

A voir également

Ajouter un commentaire

Commentaires

gatita_dev
Messages postés
135
Date d'inscription
vendredi 27 mai 2005
Statut
Membre
Dernière intervention
5 février 2008
-
oui mais si je fais les même instruction dans une fonction javascript sans passé par asp ça fonctionne
cs_fabrice69
Messages postés
1766
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
4 -
Bonjour,

Il faut controler que le nom de votre objet possède bien le nom utilisé dans Javascript. Ceci se fait dans le code HTML résultat.
Cordialement
Romelard Fabrice
gatita_dev
Messages postés
135
Date d'inscription
vendredi 27 mai 2005
Statut
Membre
Dernière intervention
5 février 2008
-
J'ai bien apprécié votre code il m'a beaucoup aidé parce que je savais pas comment intégrer du javascript dans le codebehind de ma page aspx, mais j'ai une petite question:
quand je met une instruction javascript qui pointe sur un objet de la page il me retourne une valeur null par exemple
"document.getElementById('element').value" ne retourne aucune valeur.
s'il y a une solution je vous prie de m'aider.
merci dans tous les cas

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.