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

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

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.