Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „Problem bei Javascript mit Array“

Beowulf

Nicht mehr ganz neu hier

Hallo zusammen,

ich muss hier ein kleines Javascript schreiben, um die Pseudofunktionalität eines Login hinzubekommen. Ich habe den JavaScript-Anteil eigentlich auch schon fertig, habe aber ein (für mich) seltsames Problem. Und zwar ist es so, dass das Script nur mit normalen Variablen funktioniert, nicht aber mittels Array, was ich nicht verstehe. Hier der Quellcode:

Code:
// JavaScript Document

/*    vuser = 'test';
    vpass = 'test';*/
    
function validate(user,pass) {
    
    var vuser = new array();
    vuser[0] = 'test';
    vuser[1] = 'b';
    vuser[2] = 'c';
    
    var vpass = new array();
    vpass[0] = 'test';
    vpass[1] = 'test';
    vpass[2] = 'test';
    
    for (var i = 0; i < 4; i++)
        {
        if ((document.login.user.value==vuser[i]) && (document.login.pass.value==vpass[i]))
            {
            if (i==0)
                {
                load('a/img.html');
                }
            if (i==1)
                {
                load('b/img.html');
                }
            else 
                {
                load('c/img.html');
                }
            }

        if (i > 2) {
                alert('Sie haben keine Berechtigung zum Zutritt zu dieser Seite!');
                break;
            }
        alert('Counter: ' + i);
        }
}

function load(url) {
    location.href=url;
}
Probiere ich es mit

Code:
var vuser = 'test';
var vpass = 'test';
UND

Code:
if ((document.login.user.value==vuser) && (document.login.pass.value==vpass))
gehts, mittels Array und Abfrage

Code:
if ((document.login.user.value==vuser[i]) && (document.login.pass.value==vpass[i]))
dann leider nicht nicht mehr.

Hier der html-Teil:

HTML:
<form id="login" name="login" action="" method="post">
                    Username :
                    <input type="text" name="user"><br><br>
                    Password :
                    <input type="password" name="pass"><br>
                    <br><br>
                    <input type="button" value="LogIn" name="Submit" onclick="validate(user,pass);" >
                    <input type="reset" value="Reset" name="Reset">
                    <br><br>
                    <hr>
                </form>
Ich bin ratlos und weiß nicht, was ich falsch gemacht habe.

Wäre nett, wenn mir jemand von Euch einen Tip geben könnte.
 
Zuletzt bearbeitet:

michas

Nicht mehr ganz neu hier

AW: Problem bei Javascript mit Array

Hi,
Du hast da einen (oder zwei) kleine JS Fehler..

ich habs mal geändert, sieht dann so aus...
HTML:
function validate(user,pass) {
    debugger;
    var vuser = new Array();
    vuser[0] = 'test';
    vuser[1] = 'b';
    vuser[2] = 'c';
    
    var vpass = new Array();
    vpass[0] = 'test';
    vpass[1] = 'test';
    vpass[2] = 'test';
    
    for (var i = 0; i < 4; i++)
        {
        if ((document.getElementById('user').value==vuser[i]) && (document.getElementById('pass').value==vpass[i]))
            {
            if (i==0)
                {
                load('a/img.html');
                }
            if (i==1)
                {
                load('b/img.html');
                }
            else 
                {
                load('c/img.html');
                }
            }

        if (i > 2) {
                alert('Sie haben keine Berechtigung zum Zutritt zu dieser Seite!');
                break;
            }
        alert('Counter: ' + i);
        }
}

Allerding bin ich der Meinung, dass Deine Herangehensweise noch ein wenig zu überdenken ist... Insbesondere die for schleife macht bestimmt nicht dass, was Du eigentlich bezwecken möchtest... Viel Spaß beim weiterprobieren...

Eh ich es vergesse, im HTML Teil sollten natürlich die IDs für USER und PASS auch noch gesetzt werden!
Gruß Micha
 

Beowulf

Nicht mehr ganz neu hier

AW: Problem bei Javascript mit Array

Vielen Dank für Deine Hilfestellung. Es geht zwar auch so, wie ich es gemacht habe (also ohne elementByID), aber durch Deinen Tip bin ich auf den wirklich blödesten Fehler überhaupt gekommen. Es musste new Array() statt new array() heißen. Außerdem war die If-Abfrage mit i > 2 an der falschen Stelle.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
175.182
Beiträge
2.582.046
Mitglieder
67.255
Neuestes Mitglied
Bitterlimoni
Oben