webForumDet fria alternativet

Anropa javascript från funktion...

2 svar · 400 visningar · startad av mottosson

mottossonMedlem sedan mars 200339 inlägg
#1

Kan man anropa en javascript-funktion från en asp.net funktion om man t.ex. vill att en messagebox ska komma upp när man trycker på en knapp?

typ:

void btn_Click(...)
{
    javascript(...)
}
GrynetMedlem sedan maj 2001329 inlägg
#2

Den enklaste varianten är ju att lägga händelsen helt på klient sidan. Exempelvis genom att starta ett javascript i en a tag eller på onClick händelsen m.h.a javascript:minJavaFuntion();, men eftersom du skriver ifrån en asp.net funktion antar jag att du vill ha en postback och göra lite saker innan du kör ett javascript när du skickar sidan till klienten. Då får du använda dig av Page.RegisterStartupScript, vilken du kan läsa mer om i dokumentationen eller på länk till online dokumentationen:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemWebUIPageClassRegisterStartupScriptTopic.asp

NETworkMedlem sedan juni 20011 732 inlägg
#3

...och det går även att göra åt andra hållet. Exempelvis om du vill slänga upp en popupruta "är du verkligen säker på att du vill radera blah blah" och sedan från javascriptet köra en serversidefunktion...

<asp:button id="HiddenDeleteB" [b]style="VISIBILITY: hidden"[/b] onclick="DeletePageHiddenClick" runat="server"></asp:button>
<input onclick="CheckDelete()" type="button" value="Radera" runat="server" id="DeleteB">

<script>
function CheckDelete(){
  if (confirm("Varning! Är du verkligen säker på att du vill radera sidan?")) {
    document.getElementById("HiddenDeleteB").click();
  }
}
</script>
137 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)