.
Anmeldung | Registrieren | Hilfe
in Suchen

JavaScript mit ClientID in JS auslagern

Letzter Beitrag 16. Dez 2008 19:11 von Rene Drescher-Hackel. 4 Antworten.
Seite 1 von 1 (5 Treffer)
Beiträge sortieren: Zurück Weiter
  • 12. Dez 2008 19:33

    • Jan Welker
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 13. Jan 2008
    • 90491
    • Beiträge 1.464
    • Punkte 20.265
    • Moderator

    JavaScript mit ClientID in JS auslagern

    Hallo zusammen,

    ich verwende unter anderem folgenen JS Code innerhalb meiner Seite in einem Scripttag:

    var button = $get('<%= RefreshButton.ClientID %>');
    button.src = 'App_Themes/Design1/images/arrows.gif';

    Der Code enthällt auch ASP.NET Code mit dem die ClientID des Contros ermittelt wird.

    Jetzt möchte ich den JS Code in eine .js Datei auslagern. Wenn ich dies tue, wird die ClientID nicht ausgetauscht weil sich ASP.NET nicht für *.js - Dateien interessiert.

    Gibt es eine elegante Lösung, um den Code in eien .js Datei auszulagern, so das die ClientID ersetzt wird?

    Danke!
    Jan

     

    • IP-Adresse ist Registriert
  • 13. Dez 2008 18:24 Antwort zu

    • JuergenAuer
    • Top 25 Mitwirkender
      Männlich
    • Registriert am 17. Okt 2008
    • Berlin
    • Beiträge 127
    • Punkte 1.820

    JavaScript mit ClientID in JS auslagern

    Antworten
    Auf die Schnelle fallen mir zwei Möglichkeiten ein:

    Variante 1 - falls möglich: Die ClientID direkt im Quellcode fixieren. Ich habe bsp. bei mir auf den internen Admin-Masken (vgl. http://www.server-daten.de/admin/ - da wird das natürlich nicht verwendet) im Output des inneren Framefensters einen Ausdruck:

    <link id="hgc_stylesheet" rel="stylesheet" type="text/css" href="/admin/sd.css" />


    der ist in (einer der wenigen) der ASPX-Seite mit

    <link id="hgc_stylesheet" rel="stylesheet" 
    type="text/css" runat="server" EnableViewState='false' href="/admin/sd.css" />


    deklariert und wird intern eventuell angesprochen, falls eine eigene CSS-Datei zugeordnet werden soll. Da wird also programmatisch der href-Wert zur Laufzeit mit einem gewünschten geänderten Wert bestückt.


    Variante 2 - die eigentlich immer geht: In irgendeiner globalen Render-Methode

    <input type='hidden' id='festgelegter Name' value=''/>


    einfügen und beim Aufruf value mit dem gewünschten Wert bestücken. Per JavaScript kommt man dann mit document.getElementById('festgelegter Name').value an den Wert ran.

    Innerhalb von Server-Daten geht letzteres noch viel einfacher, weil ich dort das hidden-Element direkt in den Html-Code der Ausgabeseite reinsetzen kann. Bei einer einzelnen ASPX-Seite könnte man das auch so machen. Braucht man das in sehr vielen Seiten, dann hängt das von der Gesamtkonstruktion ab, wo man das am besten / einfachsten einbaut.
    Server-Daten: Online CRM - Lösungen

    Sql und Xml
    • IP-Adresse ist Registriert
  • 15. Dez 2008 21:44 Antwort zu

    • Jan Welker
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 13. Jan 2008
    • 90491
    • Beiträge 1.464
    • Punkte 20.265
    • Moderator

    JavaScript mit ClientID in JS auslagern

    Hallo,

    danke, ich werde die zweite Methode mal ausprobieren.

    Jan

    • IP-Adresse ist Registriert
  • 16. Dez 2008 9:32 Antwort zu

    JavaScript mit ClientID in JS auslagern

    Hallo Jan,

    schau mal bei meinem Arbeitskollegen Rene auf den Blog. Er hat hier mal eine Lösung mit ClientIDs ausgearbeitet.
    http://www.drescher-hackel.de/default,date,2007-07-22.aspx
    • IP-Adresse ist Registriert
  • 16. Dez 2008 19:11 Antwort zu

    JavaScript mit ClientID in JS auslagern

    Rainer,

    das hast aber "schön" gesagt...Big Smile

    @Jan:

    Gibt es eine elegante Lösung, um den Code in eien .js Datei auszulagern, so das die ClientID ersetzt wird?

    Schau dir doch mal jQuery an, da bist doch nahezu unabhängig, was ClientID angeht.

     

    Gruss Rene
    ______________________________


    weblog.drescher-hackel.de



    .NET Framework 2.0 Web-based Client Development & .NET Framework Application Development Foundation
    • IP-Adresse ist Registriert
Seite 1 von 1 (5 Treffer)

WPF Forum | ASP.NET Forum | ASP.NET MVC Forum | Silverlight Forum | Windows Phone 7 Forum | SharePoint Forum | Dotnet Jobs | Dotnet Termine | Developer Blogs | Dotnet News

Das Team | Regeln | Impressum