• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

[JavaScript] Code-Workaround ohne eckige Klammern gesucht

Rysk

Jerseymac
Registriert
21.10.07
Beiträge
457
Hallo,

ich habe eine Website und diese Website hat zwei Eingabefelder für die Login-Daten. Konkret handelt es sich um StudiVZ.net :-D (bitte keine Kommentare darüber)

Nun möchte ich (die korrekten Daten in den Feldern vorrausgesetzt) per JS eingeloggt werden.

Geht per:
Code:
document.getElementsByName("login")[0].click();
Nun habe ich das Problem, dass ich ein Code-Stück ohne eckige Klammern brauche. Ich würde es ja per getElementById machen, jedoch hat der Login-Button keine ID. Oder per document.forms.formname.submit() doch hat das Formular nur ne Id und keinen Namen.

Für eine Lösung wäre ich euch sehr dankbar.

Achja, es muss nur in Safari funktionieren.
 

Peitzi

Blutapfel
Registriert
07.08.07
Beiträge
2.595
Wenn das deine Webseite ist, warum gibst du den Eingabefeldern nicht einfach eine ID?
 

Rysk

Jerseymac
Registriert
21.10.07
Beiträge
457
Meine Seite? Nein, ich bin nicht StudiVZ-Admin. Ich wollte mit "Ich habe hier eine Seite" lediglich ausdrücken, dass ich mit dieser Seite arbeite, aber als User, nicht als Admin. Und daher kann ich die gegebenen Parameter nicht ändern, sondern muss versuchen, mich da irgendwie anzupassen.
 

Maluku

Finkenwerder Herbstprinz
Registriert
10.05.08
Beiträge
464
Mal sehen, mir fallen da 3 Lösungen ein (Alle nicht getestet)


Einfach vom Form aus starten und dann weiterhangeln
Code:
document.getElementById("Login").firstChild.firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.click()

Array-Funktionen benutzen (Shift() entfernt das erste Element und gibt es zurück)
Code:
document.getElementsByName("login").shift().click();
Ich hab mal gehört, dass es auch so gehen sollte: Da Arrays ja auch nur Objekte sind.
Code:
document.getElementsByName("login").1.click();
 
  • Like
Reaktionen: Rysk

Rysk

Jerseymac
Registriert
21.10.07
Beiträge
457
Danke, so meinte ich das... Werds heut nachmittag mal ausprobieren.
 

Slashwalker

Winterbanana
Registriert
15.05.06
Beiträge
2.213
Wenn das form eine ID hat sollte auch
Code:
document.getElementByID('formid').submit();
funktionieren.