Manuel: Warum funktioniert diese Scipt nicht?

Hallo Leute,

da wende ich mich doch mal wieder vertrauensvoll an Euch.

Wieder mal ein Problem mit einem selbstgekritzelten Script, das einfach nicht funktionieren will, bzw. nicht so, wie ich es will:

<script>
<!--
function Nickname() {
if ((chatlogin.nickname.value == 'Nickname') || (chatlogin.nickname.value == ''))
alert('Bitte gib einen Nickname ein!')
chatlogin.nickname.focus();
return false;
}
//-->
</script>

Das Script sollte ein Absenden des Formulars bzw. ein Eintreten in den Chat verhindern, sofern der Inhalt des Nicknamefeldes "Nickname" oder " " ist. Das Feld wird dann auch "Focus"-siert, aber es wird dann trotzdem eingeloggt.

Wer weiß da Rat?

  1. Du hast den anweisungsblock hinter der if-abfrage vergesssen! Außerdem fehlt das Zeilenende Zeichen (Semikolon) hinter alert. So sollte es gehen:

    <script>
    <!--
    function Nickname() {
      if ((chatlogin.nickname.value == 'Nickname') || (chatlogin.nickname.value == '')) {
        alert('Bitte gib einen Nickname ein!');
        chatlogin.nickname.focus();
      }
      return false;
    }
    //-->
    </script>

    So sollte es gehen. habsd nich getestet. Nur so ausn Fingern gesogen.

    PeterK

    1. <script>

      <script type="text/javascript">

      Das script-Element verlangt ein type-Attribut. Das hatten wir doch gerade. [pref:t=42966&m=234906]
      Gunnar

      --
      Die Menschen sollten endlich lernen, andere Kulturen objektiv zu betrachten, damit sie wissen, wann sie sich einmischen sollten und wann nicht.
      (T'Pol in Enterprise: "Aufbruch ins Unbekannte")
    2. Hallo,

      if ((chatlogin.nickname.value == 'Nickname') || (chatlogin.nickname.value == '')) {
          alert('Bitte gib einen Nickname ein!');
          chatlogin.nickname.focus();
        }
        return false;

      also ich würde meinen, dass das return false; noch in den if block gehört, da die Funktion ja sonst _immer_ false zurück gibt.

      gruß,
      Severin

  2. Hallo,

    if ((chatlogin.nickname.value == 'Nickname') || (chatlogin.nickname.value == ''))
    alert('Bitte gib einen Nickname ein!')
    chatlogin.nickname.focus();
    return false;

    Da Fehlen die  {} um den if block und der Strichpunkt hinter dem alert().

    Des weitern, wie rufst du das Script auf?

    gruß,
    Severin

  3. <script>
    <!--
    function Nickname() {
    if ((chatlogin.nickname.value == 'Nickname') || (chatlogin.nickname.value == ''))
    alert('Bitte gib einen Nickname ein!')
    chatlogin.nickname.focus();
    return false;
    }
    //-->
    </script>

    Das Script sollte ein Absenden des Formulars bzw. ein Eintreten in den Chat verhindern, sofern der Inhalt des Nicknamefeldes "Nickname" oder " " ist. Das Feld wird dann auch "Focus"-siert, aber es wird dann trotzdem eingeloggt.

    Danke für die Antworten, aber es funzt immer noch nicht!

    Hier die URL:

    http://people.freenet.de/seber-rider/BDKJ/index3.htm

    1. Hallo,

      Wenn du mir noch zeigst wo du die Funktion eingebaut hast bin ich glücklich ;)

      gruß,
      Severin