[GastForen Programmierung/Entwicklung JavaScript CheckInput???

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

CheckInput???

Wuzon
Beiträge gesamt: 6

21. Okt 2004, 07:33
Beitrag # 1 von 17
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin, ich bin neu und brauche dringend Hilfe:
Ich hab seit 8 Tagen folgende Aufgabe vor mir liegen und komm einfach nicht weiter:
Auf meiner imaginären WebPage soll ein Newsletterservice eingerichtet werde. (Ein Eingabefeld mit einem submit-Button. Damit nicht jeder Mist zu mir gemailt wird, soll die Eingabe mit CheckInput auf ein "@"-Zeichen hin überprüft werden. Ist keines da soll das alert-Fenster "Die Eingabe ist keine gültige e-mail-Adresse!" erscheinen. Nach dem Klick auf den Submit-Button, soll der Cursor ins Textfeld
zurück und die Eingabe markiert sein.
War das verständlich?
Ich hab bis jetzt folgendes zusammenbekommen:
<html>
<head>
<title>MMDE 5 zweite Aufgabe</title>
<script language=JavaScript><!--
function CheckInput(){
if(document.Formular.Text.value.indexOf('@') == -1){
alert("Die Eingabe ist keine gültige e-mail-Adresse");
document.Formular.select();}}
//-->
</script>
</head>
<body>
<p align="center">
<br>
<br>
<br>
<br>
<font size="5"><b>Infos ohne langes Suchen. </b><br></font>
<br>
Geben Sie uns einfach Ihre e-mail-Adresse und Sie erhalten regelmässig unseren Newsletter mit den neuesten Informationen!</font>
<br>
<br>
<form>
<p align="center">
Ihre e-mail Adresse
<input type="text" name="Text" size="30" >
<input type="submit" value="Abschicken" onClick="CheckInput()">
</form>
</body>
</html>

Wenn ich´s im Browser ausprobiere, passiert gar nichts. Er kommt sozusagen gar nicht über die if-function hinaus. Kann mir irgendjemand helfen? Ich bin schon total verzweifelt.
X

CheckInput???

Intermedia
Beiträge gesamt: 1287

21. Okt 2004, 13:57
Beitrag # 2 von 17
Beitrag ID: #117568
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ich schlage mal vor als erstes die Fehlermeldungen im Browser für Javascript einzuschalten damit du auch Fehler suchen kannst.
Es gibt auch Debuger für Javascript.

Dann solltest du auch ein Formular per HTML erstellen und nicht nur die Felder.

<form name="Forumular" method="post" action="dasZiel">

Eventuell ist es eine Überlegung wert das Formular nicht per Submit zu versenden sondern per Button.

Um in ein Formularfeld zu "springen" mußt du einen Focus setzen damit der Cursor dort auch landet.

document.Formular.Text.focus();

Ich hoffe es reicht für den Ansatz.

Gruß Sven


als Antwort auf: [#117410]

CheckInput???

Anonym
Beiträge gesamt: 22827

21. Okt 2004, 14:55
Beitrag # 3 von 17
Beitrag ID: #117598
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin, erst mal danke für die Antwort.
Ich hab den Debugger in Netscape ausprobiert und der gibt mir folgende Zeile als Fehler an:
if(document.Formular.Text.value.indexOf('@') == -1){
Üer den Rest muss ich noch mal grübeln ... ganz so fit bin ich in HTML und JavaScript noch nicht (wie man sieht).
mfg



als Antwort auf: [#117410]

CheckInput???

Intermedia
Beiträge gesamt: 1287

21. Okt 2004, 15:03
Beitrag # 4 von 17
Beitrag ID: #117600
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

ja das leuchtet mir schon ein das er an dieser Zeile mecker, weil du auf ein Objekt zugreifen willst welches nicht existiert.

Gruß Sven


als Antwort auf: [#117410]

CheckInput???

Anonym
Beiträge gesamt: 22827

21. Okt 2004, 16:09
Beitrag # 5 von 17
Beitrag ID: #117635
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich dachte ich hab so eins...hab ich doch extra so genannt.!


als Antwort auf: [#117410]

CheckInput???

Intermedia
Beiträge gesamt: 1287

21. Okt 2004, 20:40
Beitrag # 6 von 17
Beitrag ID: #117704
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Also ich hab in dem geposteten Quelltext kein Formular gesehen.:-(

Überprüf nochmal deine Seite gründlich.

Gruß Sven


als Antwort auf: [#117410]

CheckInput???

Anonym
Beiträge gesamt: 22827

22. Okt 2004, 20:15
Beitrag # 7 von 17
Beitrag ID: #118050
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Seit acht Tagen liegt die Aufgabe vor Dir?
In dieser Zeit hättest Du vielleicht mal die HTML- und JavaScript-Grundlagen studieren können, und dann in erster Linie das DOM (Document Object Model).
Dann wäre Dein geposteter Code nicht so schwierig zu debuggen und die Antworten reichlich hilfreicher.
Wir können nicht 10-20 Minuten lang ALL DEINE VIELEN, KLEINEN FEHLER UND MAENGEL eliminieren, nur damit Du die Hausaufgabe hinkriegst, die Du nicht sorgfältig angehst.
Sorry, aber es musste sein.
Gruss aus Zürich
---------------------------
soehne.ch / toechter.ch
http://www.soehne.ch
---------------------------


als Antwort auf: [#117410]

CheckInput???

Wuzon
Beiträge gesamt: 6

22. Okt 2004, 21:29
Beitrag # 8 von 17
Beitrag ID: #118063
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Na das war ja mal motivierend. Vielen Dank! Mehr als die mir zur Verfügung stehenden Unterlagen und Internet-Tutorials x-mal durchzulesen kann ich auch nicht tun. Es tut mir wirklich leid, dass ich nicht so ein JavaScript-HTML-Überflieger bin.
Egal, auf jeden Fall macht mein Code jetzt fast alles was er soll, ein Frage hätte ich allerdings noch, falls es keinen zu sehr anstrengt, mir diese zu beantworten: Mit den Methoden .select() und .focus() kann man doch entweder den Text im Textfeld markieren bzw. den Cursor ins Textfeld setzen. Was muss ich tun, damit der markierte Text bzw. der Cursor nicht nach einer Sekunde wieder verschwinden??


als Antwort auf: [#117410]
(Dieser Beitrag wurde von Wuzon am 22. Okt 2004, 21:40 geändert)

CheckInput???

bline
Beiträge gesamt: 169

28. Okt 2004, 23:05
Beitrag # 9 von 17
Beitrag ID: #119534
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Da macht Dein Code was falsch.

document.forms[X].elements[x].focus();

Das sollte doch genügen am Schluss Deines Scripts, oder gehe ich da falsch?

Schau doch mal Deinen Code genauer an. Es liegt nicht an JavaScript oder HTML oder am Browser, sondern (fast) ausschliesslich an Deinem Code bzw. dem eigenen Code.

Mit document.Formular.select(); erreichst Du sicher nicht das, was Du willst. Studier mal für 10 Minuten das DOM (Document Object Model), Du DOMerchen.

Der "ermutigende" anonyme, weil neue poster von vorhin
---------------------------
soehne.ch / toechter.ch
http://www.soehne.ch
---------------------------


als Antwort auf: [#117410]

CheckInput???

Wuzon
Beiträge gesamt: 6

2. Nov 2004, 07:29
Beitrag # 10 von 17
Beitrag ID: #120459
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hab ich ausprobiert: Funktioniert nicht. :o(
Naja, ich denke, ich werd noch mal von vorne anfangen, vielleicht klappt´s ja dann. Danke für die Hilfe!


als Antwort auf: [#117410]

CheckInput???

bline
Beiträge gesamt: 169

2. Nov 2004, 07:59
Beitrag # 11 von 17
Beitrag ID: #120462
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
document.Formular.Text.focus();

Und jetzt? Mein Ratschlag vorhin war rein theoretisch.
---------------------------
soehne.ch / toechter.ch
http://www.soehne.ch
---------------------------


als Antwort auf: [#117410]

CheckInput???

Wuzon
Beiträge gesamt: 6

3. Nov 2004, 07:42
Beitrag # 12 von 17
Beitrag ID: #120744
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Jetzt sieht´s so aus und er macht immer noch nicht das, was ich will

<html>
<head>
<title>MMDE 5 zweite Aufgabe</title>
<script language=JavaScript><!--
function CheckInput(){
//var eingabe=document.formular.mail.value;
if(document.formular.mail.value.indexOf('@') == -1){
alert("Die Eingabe ist keine gültige e-mail-Adresse");
document.formular.mail.select();
}else {
alert("Danke für die Registrierung! Bald erhalten Sie unseren Newsletter!");
document.formular.mail.focus();
}}
//--></script>
</head>
<body>
<center>
<br><br><br><br>
<font size="5"><b>Infos ohne langes Suchen. </b></font>
<br><br>
Geben Sie uns einfach Ihre e-mail-Adresse und Sie erhalten regelmässig unseren Newsletter mit den neuesten Informationen!
<br><br>
<form name="formular" action="mailto:wuzon@t-online.de" method="post">
Ihre e-mail Adresse:
<input type="text" name="mail" size="30">
<input type="submit" name="Button" value="Abschicken" onClick="CheckInput()">
</center>
</form>
</body>
</html>


als Antwort auf: [#117410]

CheckInput???

bline
Beiträge gesamt: 169

3. Nov 2004, 08:19
Beitrag # 13 von 17
Beitrag ID: #120749
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Keine Panik. Du bist einigermassen nah dran, denn Dir ist ein kleiner Ueberlegungsfehler sowie ein grundsätzlicher Fehler unterlaufen. Aber schau Dir doch bitte den Code vorher genauer an, bevor Du was postet, denn vielleicht wäre Dir ein Fehler selber aufgefallen.
Ich habe die Erfahrung gemacht, dass wenn bei einem Script von mir irgendwas nicht funktioniert, es meistens die einfachsten und dümmsten Fehler von mir selber sind, oder Flüchtigkeitsfehler. Auch kann es sein, dass man u.U. lange danach sucht, weil man an der falschen Stelle hängen bleibt. Aber das gehört dazu.
Manchmal ist es hilfreich, den Code, wenn er nicht allzu lange ist, auszudrucken und auf Papier zu studieren.

Und wenn Du Firebird oder Mozilla zum Testen einsetzt, ist die Aktivierung der JavaScript-Konsole für die Fehlersuche empfehlenswert (unter Tools).

alert("Die Eingabe ist keine gültige e-mail-Adresse");
document.formular.mail.focus();
document.formular.mail.select();
}else {
alert("Danke für die Registrierung! Bald erhalten Sie unseren Newsletter!");

Beim "dann/else"-Teil bin ich nicht sicher, ob das funktioniert. Früher haben nicht alle Browser die action mailto unterstützt (z.B. Netscape 2+3), weshalb ich das nie eingesetzt habe.

<form name="formular" action="mailto:wuzon@t-online.de" method="post" onsubmit="CheckInput();">
Ihre e-mail Adresse:
<input type="text" name="mail" size="30">
<input type="submit" name="Button" value="Abschicken">
</form>
</center><!-- Das center-Tag gehoert hier hin -->

Vergleich es mal mit Deinem Code. Vor allem in"form" und "input text". Vielleicht lernst Du was dazu.
Und wie ich Dir schon mal geschrieben habe: studier mal für ein paar Minuten das DOM (Document Object Model). Es hilft Dir ungemein, wenn Du die Grundlagen beherrscht.
Gruss aus Zürich
---------------------------
soehne.ch / toechter.ch
http://www.soehne.ch
---------------------------


als Antwort auf: [#117410]

CheckInput???

SabineP
Beiträge gesamt: 7586

3. Nov 2004, 10:23
Beitrag # 14 von 17
Beitrag ID: #120813
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen


als Antwort auf: [#117410]

CheckInput???

Wuzon
Beiträge gesamt: 6

3. Nov 2004, 14:50
Beitrag # 15 von 17
Beitrag ID: #120950
Bewertung:
(6962 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Erst´mal wieder danke für die Tipps, ich werde alles ausprobieren (und zum zweiten mal DOM nachlesen). Ich melde mich dann wieder. :o)


als Antwort auf: [#117410]
X

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
17.04.2024

Online
Mittwoch, 17. Apr. 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!