tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
12
ZUGRIFFE
14852
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    -Sab-k- -Sab-k- ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    Hallo,

    ich würde gerne wissen, ob es möglich ist mit C# eine Methode aus einer JavaScript-Datei aufzurufen - ohne ASP.Net zu verwenden.
    Ich hab es schon über ClientScript.RegisterStartUpScript() usw. versucht, aber da passiert gar nichts. Es wird nicht mal zum Test ein Alert("test"); ausgegeben.
    Bin über jede Hilfe/Link dankbar!

    LG Sab
     

  2. #2
    Harass Harass ist offline Mitglied Bronze
    Registriert seit
    Mar 2007
    Beiträge
    38
    Hey,

    du kannst mit
    Code c:
    1
    
    ClientScript.RegisterStartUpScript(GetType(), "", "<script type=\"text/javascript\">alert('test');</script>")
    deinen Javascript-Code ausführen lassen.

    Allerdings ist das kein echter Aufruf der Funktion per ASP.NET. Mit diesen Zeilen erzeugst du nur HTML-Code, der von dem Browser eben ausgeführt wird.
     
    Grüße, Martin
    ----------------------------------------------------------------------------
    Student of computational visualistics at University of Koblenz

  3. #3
    -Sab-k- -Sab-k- ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    Hallo Martin,

    genau über diesen Weg hatte ich es ja versucht, aber es wird halt nichts ausgegeben.
    Das ist mein Code, der dem deinigen entspricht.

    page.ClientScript.RegisterStartupScript(GetType(), "", "<script type=\"text/javascript\">alert('test');</script>");

    Wenn ich dann beim Debuggen mir page angucke, muss ich fast überall lesen, dass eine System.Web.HttpException gab. Mein C# Code wird allerdings ohne Exception ausgeführt. Hast du irgendeine Ahnung, woran das liegen könnte?

    Danke + LG
    Sab
     

  4. #4
    Avatar von Alexander Schuc
    Alexander Schuc Alexander Schuc ist offline admin | crazy-weasel
    tutorials.de Administrator
    Registriert seit
    Aug 2001
    Ort
    Österreich, Stmk, Graz
    Beiträge
    2.783
    Hallo.

    Gib mal einen Key für dein Script an. (2ter Parameter..)

    Die Script-Tags kannst dir sparen, wenn du eine Überladung dieser Methode benutzt.

    Code csharp:
    1
    
    Page.ClientScript.RegisterStartupScript(this.GetType(), "alertScript", "alert('test');", true);
     
    With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
    Aaron Satie

    Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
    Captain Jean-Luc Picard, Stardate ~41294.5

    Tutorials.de chattet. Hier gibts auch .net Support ^^
    Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de

    (moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions

  5. #5
    -Sab-k- -Sab-k- ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    Hallo,

    hab ich auch schon probiert - mit demselben Ergebnis wie die ganzen anderen Male zuvor.
    Hab echt kein Plan mehr, woran es liegen könnte.
     

  6. #6
    Avatar von Alexander Schuc
    Alexander Schuc Alexander Schuc ist offline admin | crazy-weasel
    tutorials.de Administrator
    Registriert seit
    Aug 2001
    Ort
    Österreich, Stmk, Graz
    Beiträge
    2.783
    Zeig mal wie du es probierst, und was dann dabei rauskommt.
     
    With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
    Aaron Satie

    Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
    Captain Jean-Luc Picard, Stardate ~41294.5

    Tutorials.de chattet. Hier gibts auch .net Support ^^
    Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de

    (moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions

  7. #7
    -Sab-k- -Sab-k- ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    Also, da ich ja keine ASP.Net Seite habe, muss ja ne neue Page erzeugen, richtig!? Deshalb:

    Code :
    1
    2
    
    Page page = new Page();
    page.ClientScript.RegisterStartupScript(this.GetType(), "alertScript", "alert('test');", true);

    andere Variante:

    Code :
    1
    2
    
    Page page = new Page();
    page.ClientScript.RegisterStartupScript(GetType(), "", "<script type=\"text/javascript\">alert('test');</script>")

    wiederum andere Variante:

    Code :
    1
    2
    3
    
    Page page = new Page();
    page.ClientScript.RegisterClientScriptInclude("IDJavaScriptFile", "MeinJavaScriptFile.js");
    page.ClientScript.RegisterStartupScript(page.GetType(), "IDJavaScriptFile", "window.open('http://www.tutorials.de');", true);

    und hier mal mit ClientScript Manager:

    Code :
    1
    2
    3
    
    Page page = new Page();
    ClientScriptManager csm = page.ClientScript;
    csm.RegisterStartupScript(this.GetType(), "alertScript", "alert('test');", true);

    und überall mit dem Resultat, dass nichts passiert.
    Deshalb war ja auch eingangs meine Frage, ob es überhaupt möglich ist ohne eine ASP.Net Page eine JavaScript Methode aufzurufen.

    LG Sab
     

  8. #8
    Harass Harass ist offline Mitglied Bronze
    Registriert seit
    Mar 2007
    Beiträge
    38
    Du darfst keine neue Page erzeugen!

    Du willst ja in der aktuellen Seite das Skript erzeugen, also muss du es auch in dieser registrieren.
    Lass also den ganzen Quatsch weg und probier es mit dem Alexander gepostet hat. Das müsste vollkommen ausreichen!
     
    Grüße, Martin
    ----------------------------------------------------------------------------
    Student of computational visualistics at University of Koblenz

  9. #9
    Avatar von Alexander Schuc
    Alexander Schuc Alexander Schuc ist offline admin | crazy-weasel
    tutorials.de Administrator
    Registriert seit
    Aug 2001
    Ort
    Österreich, Stmk, Graz
    Beiträge
    2.783
    Warum hast du denn keine Page?!

    Wie/Wo willst überhaupt das JavaScipt ausführen lassen?!

    ClientScript.RegisterStartupScript ist dazu da, um einen JavaScript "Befehl" in der Ausgabe der ASP.net Seite zu "registrieren". Ausgeführt wieder dieser Befehl dann vom Browser,.. ganz normal, er weiss ja nix von der ASP.net Seite etc. Für ihn ists ganz normales HTML und JavaScript.

    So wie du das machst, frage ich mir wirklich was du da probierst. Bitte kläre mich auf, was machst du? *g*

    lg, Alex
     
    With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
    Aaron Satie

    Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
    Captain Jean-Luc Picard, Stardate ~41294.5

    Tutorials.de chattet. Hier gibts auch .net Support ^^
    Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de

    (moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions

  10. #10
    -Sab-k- -Sab-k- ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    Hallo Alex,

    also... Ich hab mit C# ein Plugin erstellt und das hat u.a. einen Button. Über diesen Button will ich jetzt eigtl auf meine JavaScript-Datei zugreifen. In dieser JavaScript-Datei sind dann verschiedene Methoden, wo ich u.a. überprüfen will, ob im aktuellen Browserfenster markierter Text vorliegt.
    Hab diese .js Datei angelegt, weil die Toolbar auch im FF funktionieren soll und mit JavaScript ist der Zugriff auf den Browser ja kein Problem.

    LG Sab
     

  11. #11
    Avatar von Alexander Schuc
    Alexander Schuc Alexander Schuc ist offline admin | crazy-weasel
    tutorials.de Administrator
    Registriert seit
    Aug 2001
    Ort
    Österreich, Stmk, Graz
    Beiträge
    2.783
    Wofür ist dieses Plugin, und stellt der Plugin-Host nicht entsprechende Funktionen bereit um JavaScript auszuführen? Beziehungsweise, wozu genau brauchst du da JavaScript?
     
    With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
    Aaron Satie

    Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
    Captain Jean-Luc Picard, Stardate ~41294.5

    Tutorials.de chattet. Hier gibts auch .net Support ^^
    Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de

    (moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions

  12. #12
    -Sab-k- -Sab-k- ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    Hallo,

    danke für eure Hilfe. Hab einen anderen Weg für mein Problem gefunden. Werd es direkt über C# lösen.

    LG Sab
     

  13. #13
    Goliathhunter Goliathhunter ist offline Grünschnabel
    Registriert seit
    Sep 2007
    Beiträge
    2
    Hallo auch von mir

    ok dieses thema ist schon älter wie ich sehe aber ich habe auch noch fragen dazu

    es ist so im gegensatz zu sab-k habe ich eine aspx seite und mein problem ist folgendes

    ich habe auch alle varianten die sab-k ausprobiert hat so ausprobiert und ich bekomme genau das selbe ergebnis und zwar passiert bei mir auch nichts.

    vollkommen egal welche unterfunktion vom clientscriptmanager ich benutze und vollkommen egal ob ich nun mit überladung oder <script>tag schreibe

    nur bei weglassen des tags und fehlender überladung macht er etwas aber da wird auch nur der scripttext als string auf dem bildschirm ausgegeben

    je nachdem ob ich startup oder Clientscriptinclude benutze steht der text halt mal als kopf und mal als fußzeile da aber halt nur weil die syntax nicht ganz stimmt
    wie gesagt wenn sie stimmt geschiet nicht!!

    das script ist zwar definiert und wird von clientscript.isstartupregistered auch gefunden aber halt nicht ausgeführt

    kann mir wer sagen wie es dann ausgeführt wird?
    bzw sollte es sich nciht von allein ausführen

    hier meine zeile:
    Code :
    1
    
    Page.ClientScript.RegisterStartupScript(this.GetType(), "neuesfenster", "meinfenster = window.open(" + url + ", 'Zweitfenster','width=1000,scrollbars=yes'); meinfenster.focus();", true);

    danke schonmal

    gruß
     

Ähnliche Themen

  1. Methode in DLL dynamisch aufrufen
    Von DrOverflow im Forum .NET Application und Service Design
    Antworten: 2
    Letzter Beitrag: 19.10.09, 22:35
  2. Klasse aus Methode aufrufen
    Von Morpheyz im Forum Java Grundlagen
    Antworten: 6
    Letzter Beitrag: 04.05.09, 13:00
  3. Antworten: 2
    Letzter Beitrag: 06.06.07, 18:37
  4. Methode zeitverzögert aufrufen
    Von Biergamasda im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 13.04.06, 11:46
  5. Methode aufrufen
    Von DuCaNe im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 1
    Letzter Beitrag: 22.11.04, 12:23