DevTrain

Autor: Hannes Preishuber

Javascript in WebControls

Auch wenn man sich in der ASP .NET Welt wohl fühlt, spürt man ab und zu das dringende Bedürfniss am
Client ein bischen Code auszuführen. Nun ist aber JavaScript in ASP .NET eigentlich überhaupt nicht
vorhanden. Ein paar Spuren finden sich aber doch.
Zunächst einmal kann Javascript genauso wie beliebiger HTML Code in die ASPX Seite eingebettet
werden. Die IDE von Visual Studio stellt einen enstsprechenden Assistenten und Itellisense dafür bereit.
<script language=javascript>
<!--
function Onclick()
{
alert("Click");
}
//-->
</script>
 
Um aus einem HTML Server Button ein Script auszuführen, verwendet man das Attribut onClick. Für den
Server Code wird Der Funktionsname in onServerClick angegeben.
<INPUT id="Button1" type="button" value="Button" name="Button1" runat="server" onclick="Onclick"
onserverclick="OnClick">

Meistens verwendet man aber die Web Server Controls, da die Funktionalität größer ist.
Dort fehlen aber die "Client Events". Dafür gibt es die Möglichkeit beliebige Attribute anzuhängen.
Und so kann das Attribut OnClick mit dem Wert angefügt und später aufgerufen werden.
Button1.Attributes.Add("OnClick", 'alert("click")')

Man kann noch einen Schritt weiter gehen und das JScript dynamisch erzeugen. Dazu wird einfach ein
String mit dem Script gefüllt und in der Page registriert.
Dim script As String
script = "<script language=JavaScript> function Onclick1(){alert('Click');}</script>"
RegisterClientScriptBlock("Key", script)
Der Vorteil dieser Methode ist, das später über den Key und die FunktionIsClientScriptBlockRegistered("key")) geprüft werden kann ob das Script bereits in der Seite vorhanden ist.
 
 
 

Erfasst am: 03.05.2002 - Artikel-URL: http://www.devtrain.de/news.aspx?artnr=760
© Copyright 2003 ppedv AG - http://www.ppedv.de