• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Variable wird nicht ausgegeben

Ich verstehe die Frage nicht. Was meinst du mit Komponente? Es erfolgt alles lokal ohne irgendwelche Server. Deshalb steht ja auch kein PHP oder ähnliches zur Verfügung. Der Anwender öffnet die Datei im Browser und dort erfolgt die lokale Verarbeitung.
 
Achso, das ist komplett in #1? Dann verstehe ich das Problem nicht. In #2 steht doch ein Beispiel von mir. Was passiert denn, wenn du das einbaust? Die Antwort in #3 passte nicht zu meinem Vorschlag in #2.
 
mein code aus #2 muss da hin wo du die <form> abfängst. mal eine andere frage: wie bist du an den code gekommen den du gezeigt hast?
 
Hallo,

ich lasse es jetzt so, wie es ist. Ich bekomme es nicht hin, egal was ich versuche, und die Diskussion hier führt auch zu keinem Ergebnis.

Danke dennoch. Vielleicht ist mein nächstes Problem einfacher.

Beste Grüße
Stefan
 
deine antworten sind ziemlich schwierig und unvollständig. wenn sich das nicht ändert wird das nächste problem auch nicht zu lösen sein.
 
Ach so. Vielleicht verstehe ich die (Rück-)Fragen nicht oder falsch.

Ich befasse mich sonst nicht mit Javascript. Ich benötige es nur in diesem speziellen Anwendungsfall und habe (siehe vorherige Posts) unterschiedlichste Varianten versucht, aber es gelingt eben nicht eine, z.B., weitere Variable mit "Leben" zu füllen, so dass lediglich eine zusätzliche Textausgabe des ursprünglichen Eingabewertes erfolgt. Einzeln funktioniert es, aber die Kombination misslingt. Das wird dann wohl so bleiben (müssen).
 
Zum Fragen gehören eigentlich nur drei Dinge:
  1. Frage sofort nach, wenn du eine Rückfrage, einen Link oder eine Aussage nicht verstehst
  2. Schreibe konkret, welche Fehlermeldung kommt oder welches Ereignis unerwartet fehlt/anders ist (immer die Browserkonsole F12 offen halten!)
  3. Zeige immer den zur Frage passenden Code minimiert auf das Thema der Frage, also nicht die ganze Webseite, wenn sich die Frage z.B. nur auf ein einzelnes Formular bezieht

Nafets-2014, bei dir hab ich bisher eigentlich alle 3 vermisst. Und diese 3 Punkte haben nichts mit Fachkenntnis zu JS zu tun.
Wir versuchen es nächstes mal einfach besser und haken das hier ab würde ich sagen.
 
Nafets-2014 schrieb:
also geht es nicht. Schade.
Was sind den das für aussagen. :mad:

Du machst mit deinem code eine Grob fahrlässigen Fehler. Durch den submit befehl wird immer die Seite neu geladen, was das validieren nur Komplizierter macht.

Mit dem HTML5 Button wird nix mehr neu geladen. Allerdings funktioniert AJAX auch nicht wenn man keinen Server zur Verfügung hat, so wie meine erste A Wort.


Aber das funzt:
Code:
<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Artikelbilder Ersatzteile - Intern</title>
    <style type="text/css">
        html,
        body {
            margin: 0;
            padding: 0
        }
        
        body {
            font: 76% arial, sans-serif
        }
        
        p {
            margin: 0 10px 10px
        }
        
        a {
            display: block;
            color: #981793;
            padding: 10px
        }
        
        div#header h1 {
            height: 80px;
            line-height: 80px;
            margin: 0;
            padding-top: 10px;
            padding-left: 10px;
            background: #EEE;
            color: #79B30B
        }
        
        div#content p {
            line-height: 1.4
        }
        
        div#footer {
            background: #333;
            color: #FFF
        }
        
        div#footer p {
            text-align: center;
            margin: 0;
            padding: 5px 10px
        }
        
        div#wrapper {
            float: left;
            width: 100%
        }
        
        div#content {
            clear: left;
            width: 100%
        }
        
        div#footer {
            clear: left;
            width: 100%
        }
        
        #Eingabe_Artikel {
            background-color: #9c6;
            font-size: 1.6em;
            font-weight: bold;
            text-align: center;
        }
    </style>
    <script type="text/javascript">
        function KeyPress(e) {
            e = e || window.event;
            if (e.keyCode == 13) {
                document.getElementById('submitBtn').click();
                return false;
            }
            return true;
        }


        function laden(that) {
            var pathGlobal = "Artikelbilder/" //Pfade anpassen! 
            var artNr = that.form.Eingabefeld.value; // Die Artikelnummer global abspeichern
            var path = pathGlobal + artNr; //Pfade zusammenstellen

            var img = document.getElementById("id-im"); // das Image Element holen
            img.src = path; // Pfad eintragen

            var link = document.getElementById("id-a"); // Anker holen 
            link.setAttribute('href', path); // anker Pfad erzeugen

            document.getElementById("center").textContent = artNr; // Artikelnummer an gegebenr stelle einfügen 
            //Error Event losfeuern
            img.onerror = function() {
                document.getElementById("center").textContent = "" // wenn error dann keine Artiklenummer anzeigen
                link.setAttribute('href', "#"); // anchor href attr. löschen wenn error
                alert("Für Artikel " + artNr + " ist noch kein Bild vorhanden.");
            }
            that.form.Eingabefeld.value = ""; // Inputfeld leeren.
        }
    </script>
    <!-- Verlinkung für Lightbox - Anfang -->
    <script src="Artikelbilder/lightbox/js/jquery-1.11.0.min.js"></script>
    <script src="Artikelbilder/lightbox/js/lightbox.min.js"></script>
    <link href="Artikelbilder/lightbox/css/lightbox.css" rel="stylesheet" />
    <!-- Verlinkung für Lightbox - Ende -->
</head>

<body>
    <div id="container">
        <div id="header">
            <h1><img src="Artikelbilder/logo.gif" alt="logo" width="215" height="71"></h1></div>
        <div id="wrapper">
            <div id="content">
                <p></p>
                <div style="text-align:center;">
                    <form id="formular">
                        <p><b>Artikelnummer:</b>
                            <input onkeypress="return KeyPress(event)" name="Eingabefeld" id="Eingabe_Artikel" type="text" size="24" maxlength="20" />
                            <button id="submitBtn" onclick="laden(this)" type="button">Bild anzeigen</button>
                        </p>
                        <p> </p>
                    </form>

                    <!-- Lightbox dynamisch - Anfang -->
                    <p style="font-weight: bold;" id="center">
                        <p>
                            <a href="#" id="id-a" data-lightbox="image-1"> <img src="/Artikelbilder/" id="id-im"></a>
                            <!-- Lightbox dynamisch Bildanzeige- Ende  -->

                </div>
            </div>
        </div>
        <div id="footer">
            <p>Testversion</p>
        </div>
    </div>
</body>

</html>

Wie immer habe ich jeden stritt noch mal kommentiert.
Die Function KeyPress(e) regiert auf den Enterkey weil Mensch die Gewohnheit hat das Formular via Enter abzuschicken. Darüber wird so zu sagen Button Click losgefeuert.
Über den Bild habe noch ein p tag eingebaut: <p style="font-weight: bold;" id="center">
Wo dann die ArtNr. steht.

Du musst nur noch dein Pfad in "var pathGlobal" anpassen und feuer frei.

Das sollte deinen Anforderungen genügen.

Mfg xorg1990
 
Zuletzt bearbeitet:
Zurück
Oben