Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Dom-Übung

Empfohlene Antworten

Veröffentlicht

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 :)

Wie sieht denn dein bisheriger Ansatz zur Lösung aus?

Hast du Fragen zu einem konkreten Problem?

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

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.