[JavaScript] Globale Variable

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Snarkoon, 14. August 2013 .

  1. 14. August 2013
    Hallo RR'ler,
    ich habe ein Problem mit Java und einer globalen Variable.

    Eine meiner Variablen Funktioniert die andere aber irgendwie nicht :/

    vielleicht habt ihr einen Rat für mich.
    Habe jeweils eine HTML Seite auf der eine Auswahl getroffen wird und anschließend dann die Variable gesetzt wird. Auf der nächsten Seite wird diese dann über ein Label im Text ausgegeben.

    Hier der Code:
    HTML von der funktionierenden:
    Code:
    <div id="welcome"> <p>OH!</p> Aber kommen wir erstmal zu deiner Person. Wie heißt du überhaupt?</div>
    <div id="namenseingabe"><input type="text" id="setname-input" /><a href="namensabfrage.html"><button id="setname">Ok</button></a></div>
    <div id="buttondiv"></div>
    Java dazu:
    Code:
    var pokemon;
    var name;
    
    $(document).ready(function(){
    
    $("#setname").click(function(){
     name=$("#setname-input").val();
     
    });
    $("#showname").html(name);
    nächste HTML wo der Name ausgegeben wird:
    Code:
    <div id="welcome"> <p>Okay!</p>Dein Name ist also: <span class="orange"><label id="showname"></label></span>?</div>
    <div id="namenseingabe"><a href="auswahl.html"><button id="yes">Ja</button></a><a href="name.html"><button id="no">Nein</button></a></div>
    <div id="buttondiv"></div>

    So diese Funktioniert einwandfrei.
    Jetzt zur nächsten, diese ist nach dem selben Prinzip funktioniert aber nicht.
    Die Variable wird auf der ersten HTML gesetzt, kann aber auf der zweiten nicht angezeigt bzw ausgelesen werden.

    HTML:
    Code:
    <div id="welcome-auswahl"> <p>Nun gut!</p>Hier sind 4 Pokemon, du kannst dir eines von Ihnen aussuchen. Klicke auf den Namen um eines auszuwählen.</div>
    <div id="bisasam"><a href="wahlgetroffen.html"><button id="pokemon-bisasam" >Bisasam (<span class="green">Pflanze</span>)</button></a></div>
    
    <div id="glumanda"><a href="wahlgetroffen.html"><button id="pokemon-glumanda" >Glumanda (<span class="red">Feuer</span>)</button></a></div>
    
    <div id="schiggy"><a href="wahlgetroffen.html"><button id="pokemon-schiggy" >Schiggy (<span class="blue">Wasser</span>)</button></a></div>
    
    <div id="pikachu"><a href="wahlgetroffen.html"><button id="pokemon-pikachu" >Pikachu (<span class="yellow">Blitz</span>)</button></a></div>
    JAVA:
    Code:
    var pokemon;
    var name;
    
    
    
    
    $(document).ready(function(){
    
    
    $("#pokemon-bisasam").click(function(){
     pokemon="Bisasam";
     alert(pokemon);
     $("#showpokemon").html(pokemon);
    });
    $("#showpokemon").html(pokemon);
    
    $("#pokemon-glumanda").click(function(){
     pokemon="Glumanda";
     alert(pokemon);
    
    });
    
    $("#pokemon-schiggy").click(function(){
     pokemon="Schiggy";
     alert(pokemon);
    
    });
    
    $("#pokemon-pikachu").click(function(){
     pokemon="Pikachu";
     alert(pokemon); 
    });
    
    
    HTML wo die Ausgabe stattfinden soll:
    Code:
    <div id="welcome-auswahl"> <p>Sehr schön!</p>Du hast dich also für <label id="showpokemon"></label> entschieden?</div>
    Könnt ihr mir da weiter helfen?
     
  2. 14. August 2013
    AW: [JavaScript] Globale Variable

    Das geht auch nicht. Variablen können nur genutzt werden, wenn sie in einem Script von der selben HTML-Datei aufgerufen wurden.

    Entweder arbeitest du mit Cookies oder aber versuchst dich an diesem Beispiel zu einer Lösung.
    http://forum.joergkrusesweb.de/globale-variablen-in-javascript-austausch-zw-html-dateien-t-1568-1.html

    Allerdings solltest du dir bewusst sein, dass manche Leute weder Cookies, noch Javascript zulassen. PHP wäre evtl. auch und dann sogar die bessere Lösung.
     
    1 Person gefällt das.
  3. 14. August 2013
    AW: [JavaScript] Globale Variable

    Bitte nicht!

    Arbeite mit localStorage, ist sowieso einfacher

    Code:
    // Zum setzen
    localStorage.setItem('variable1', 'inhalt');
    
    // Zum lesen
    localStorage.getItem('variable1');
     
  4. 14. August 2013
    AW: [JavaScript] Globale Variable

    Das localStorage kann ich einfach so in Java verwenden? Bzw wie ist es möglich, dass die erste globale Variable dann gelesen werden kann und der Name korrekt angezeigt wird? Dies funktioniert doch auch über 2 verschiedene HTML Dateien.

    Arbeite vermehrt mit Jquery, gibt es da sonst eine Möglichkeit?
     
  5. 14. August 2013
    AW: [JavaScript] Globale Variable

    Erst einmal die Basics:

    1. JAVA ist eine Programmiersprache und Javascript ist eine SCRIPT-Sprache.
    2. Java ist keine Abkürzung für Javascript, das wäre JS.
    3. JAVA und Javascript haben nichts miteinander zutun.


    Javascript läuft nur so lange bis die Seite neu geladen oder eine andere aufgerufen wird. Auch ein anderes Dokument vom selben Server.

    Wenn du beim setzen deiner Variable den Wert im localStorage ablegst, dann ist dieser Wert in jedem Dokument von deinem Server verfügbar.

    Du musst ihn nur aus dem localStorage anfordern mit getItem()
     
    1 Person gefällt das.
  6. 14. August 2013
    Zuletzt bearbeitet: 15. August 2013
    AW: [JavaScript] Globale Variable

    Und wie gebe ich Ihn dann wieder aus? in einem Text?
    Weshalb funktioniert es dann mit einer globalen Variable beim Namen? Und beim Anzeigen von der Pokemon Auswahl nicht?

    //EDIT:
    hat sich erledigt, habs gecheckt danke dir!
     
  7. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.