Zum Inhalt springen

Dom-Übung


DonniD

Empfohlene Beiträge

Hi zusammen,

ich bin gerade am lernen für eine Prüfung und habe ein großes Problem mit DOM-Scripting. Meine Frage hat eigentlich "Kindergartenniveau" und dürfte für die meißten hier kein Problem sein, ich bin allerdings totaler Anfänger und komme einfach nich zurecht damit. Die Aufgabe lautet:

Gegeben sei das folgende Formular zur Eingabe einer Kurznachricht (SMS). Während der Eingabe sollen in dem einzeiligen Texteingabefeld die noch verbleibenden Zeichen (maximal 160 sind erlaubt)

angezeigt werden.

<form action="" style="width: 300px;">

<p>Kurznachricht:<br />

<textarea name="sms text" rows="4" cols="30" onchange="sms()"

onkeydown="sms()" onkeyup="sms()"></textarea><br />

Verbleibende Zeichen: <input name="chars left" value="160"

type="text" size="3" maxlength="3" readonly="readonly" /></p>

</form>

Definieren Sie die JavaScript Funktion sms() und beachten Sie hierbei die folgenden Hinweise:

1. Definieren Sie innerhalb der Funktion eine lokale Variable input und weisen Sie dieser

Variable den vom Benutzer eingegebenen Text der Kurznachricht zu.

2. Machen Sie innerhalb der Funktion eine Fallunterscheidung. Wenn der Text länger als 160

Zeichen ist, dann soll der Rest abgeschnitten und in das einzeilige Eingabefeld eine Null

geschrieben werden. Andernfalls soll die Anzahl der noch verbleibenden Zeichen berechnet

und der entsprechende Wert in dem einzeiligen Textfeld aktualisiert werden.

3. Die Länge eines Strings (Anzahl der Zeichen) erhält man über die Eigenschaft length.

4. Verwenden Sie die Funktion substr(), um von einem String eine Teilzeichenkette zu extrahieren. Die Funktion gibt die extrahierte Zeichenkette zurück und erwartet zwei Parameter: Die Position des ersten zu extrahierenden Zeichens in der Zeichenkette, wobei bei 0 zu zählen begonnen wird (Anfangsindex) und die Position des ersten nicht mehr zu

extrahierenden Zeichens in der Zeichenkette (Endindex).

Für den Zugriff auf die Formularelemente sollen DOM-Methoden verwendet werden. Es ist vielleicht viel Text, aber die Aufgabe ansich dürfte für Könner sehr schnell gelöst sein und auch nur wenige Zeilen Code lang sein. Vielleicht kann mir da ja jemand weiter helfen.

Vielen Dank schon mal :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi,

hab das Problem schon gelöst. Für die, dies eventuell auch interessiert, hier meine Lösung :

function sms()

            {

                var input = document.getElementsByTagName('textarea')[0].value;

                /*alert("Input:"+input);*/

                if(input.length > 160)

                {

                    input = input.substr(0,161);

                    document.getElementsByTagName('input')[0].value = 0;

                }


                else

                    {

                        document.getElementsByTagName('input')[0].value = (160 - input.length);

                    }


            }

Thx

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...