jo: Validator Problem: Autocomplete, form: name

Hi.

Folgendes wirft mir der Validator aus:

*   Line 61, column 44: Attribute "name" exists, but can not be used for this element.

<form action='/Search' method='get' name='f'>

* Line 62, column 78: Attribute "autocomplete" is not a valid attribute

…xt' name='s' id='search' autocomplete='off' maxlength='2048' value='' />

Das sind zwei essenzielle Dinge die ich wohl kaum umgehen kann also wie würdet Ihr vorgehen?

Mein Doctype:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns='http://www.w3.org/1999/xhtml'>

...

Grüße, Jo

  1. Hi,

    *   Line 61, column 44: Attribute "name" exists, but can not be used for this element.

    <form action='/Search' method='get' name='f'>

    * Line 62, column 78: Attribute "autocomplete" is not a valid attribute

    …xt' name='s' id='search' autocomplete='off' maxlength='2048' value='' />

    Das sind zwei essenzielle Dinge die ich wohl kaum umgehen kann also wie würdet Ihr vorgehen?

    Wenn du das wirklich für essentiell hältst, dann nimmst du halt in Kauf, dass sie in der gewählten (X)HTML-Version nicht valide sind.

    Wenn das für dich keine Option sein sollte -
    XHTML Strict erlaubt kein name-Attribut für FORM mehr - also wähle eine andere Variante, oder verzichte auf das Attribut (es als "essentiell" zu bezeichnen, halte ich sowieso für gewagt - Möglichkeiten zum Zugriff auf Formulare per JavaScript existieren auch abseits eines Namens mehr als genug);
    Und autocomplete war noch nie in irgendeinem Standard enthalten. Darauf zu Gunsten der freien Entscheidung des Nutzers zu verzichten, dürfte auch oftmals die bessere Wahl sein.

    MfG ChrisB

    --
    Light travels faster than sound - that's why most people appear bright until you hear them speak.
    1. Hi.

      Wenn das für dich keine Option sein sollte -
      XHTML Strict erlaubt kein name-Attribut für FORM mehr - also wähle eine andere Variante, oder verzichte auf das Attribut (es als "essentiell" zu bezeichnen, halte ich sowieso für gewagt - Möglichkeiten zum Zugriff auf Formulare per JavaScript existieren auch abseits eines Namens mehr als genug);

      Stimmt ich machs einfach per ID.

      Und autocomplete war noch nie in irgendeinem Standard enthalten. Darauf zu Gunsten der freien Entscheidung des Nutzers zu verzichten, dürfte auch oftmals die bessere Wahl sein.

      Nunja. Stell dir vor meine Seite sieht aus wie Googles Startseite.
      In der Mitte ein großes Suchformular.
      1. Warum gehst du zu 90% auf diese Seite?
      2. Was wäre das erste was du dann anwählen müsstest?

      Richtig. Das Suchformular, warum soll ich dem User das nicht abnehmen?
      Gruß, Jo

      1. Nunja. Stell dir vor meine Seite sieht aus wie Googles Startseite.
        In der Mitte ein großes Suchformular.

        1. Warum gehst du zu 90% auf diese Seite?
        2. Was wäre das erste was du dann anwählen müsstest?

        Richtig. Das Suchformular, warum soll ich dem User das nicht abnehmen?

        Sorry ich Idiot habe gerade das automatisch anwählen des Formulars mit autocomplete verwechselt.
        Autocomplete muss bei mir ausgestellt sein da ich selbst Vorschläge per Ajax aus der DB hole.

        Gruß, Jo

        1. Hi,

          Autocomplete muss bei mir ausgestellt sein da ich selbst Vorschläge per Ajax aus der DB hole.

          Na dann kannst du das Attribut ja auch per JavaScript setzen - dann interessiert's den Validator auch nicht.

          MfG ChrisB

          --
          Light travels faster than sound - that's why most people appear bright until you hear them speak.
          1. Hi,

            Autocomplete muss bei mir ausgestellt sein da ich selbst Vorschläge per Ajax aus der DB hole.
            Na dann kannst du das Attribut ja auch per JavaScript setzen - dann interessiert's den Validator auch nicht.

            Und es wird vor allem auch nur dann gesetzt, wenn auch das AJAX funktionieren kann ...

            cu,
            Andreas

            --
            Warum nennt sich Andreas hier MudGuard?
            O o ostern ...
            Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
        2. Mahlzeit Jo,

          Autocomplete muss bei mir ausgestellt sein da ich selbst Vorschläge per Ajax aus der DB hole.

          Was spricht dagegen, dieses inoffizielle Attribut dann auch <http://de.selfhtml.org/javascript/objekte/node.htm#set_attribute@title=mit Javascript zu setzen>? Schließlich ist Grundvoraussetzung für ein schickes "Search-as-you-type"-Feature ja, dass Javascript funktioniert ...

          MfG,
          EKKi

          --
          sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
          1. Was spricht dagegen, dieses inoffizielle Attribut dann auch <http://de.selfhtml.org/javascript/objekte/node.htm#set_attribute@title=mit Javascript zu setzen>? Schließlich ist Grundvoraussetzung für ein schickes "Search-as-you-type"-Feature ja, dass Javascript funktioniert ...

            Die Rettung! ;)
            Supi.

            Aber es klappt nicht ganz.

            <input name="ok" type="text" onload="setAutocomplete(this);">

            Und die Funktion:

            function setAutocomplete(e){  
            	e.setAttribute("autocomplete", "off");  
            }
            

            Die Fehlerkonsole sagt leider garnicht.

            Gruß, Jo

            1. Mahlzeit Jo,

              Aber es klappt nicht ganz.

              So natürlich nicht ...

              <input name="ok" type="text" onload="setAutocomplete(this);">

              ... <http://de.selfhtml.org/html/referenz/attribute.htm#input@title=schließlich besitzt ein <input>-Element gar kein "onload"-Attribut>.

              Die Fehlerkonsole sagt leider garnicht.

              Die vielleicht nicht - der Validator sollte aber schon ...

              MfG,
              EKKi

              --
              sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
              1. ... <http://de.selfhtml.org/html/referenz/attribute.htm#input@title=schließlich besitzt ein <input>-Element gar kein "onload"-Attribut>.

                onfocus und onclick und onselect klappen auch nicht =/...

                1. Mahlzeit JO,

                  onfocus und onclick und onselect klappen auch nicht =/...

                  "Klappt nicht" klappt nicht. Fehlerkonsole sagt wieder nix? Wie sieht der Quelltext jetzt aus?

                  MfG,
                  EKKi

                  --
                  sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
                  1. Hi.

                    onfocus und onclick und onselect klappen auch nicht =/...

                    "Klappt nicht" klappt nicht. Fehlerkonsole sagt wieder nix? Wie sieht der Quelltext jetzt aus?

                    Och Ekki ich weiß das "klappt nichts" keine beschreibung ist aber es lässt sich doch entnehmen das sich _nichts_ geändert hat bis auf das aus onload, onX wurde...

                    Aber hier nochmal der Code:

                    <input name="ok" type="text" onX="setAutocomplete(this);">

                    X=select, focus,change

                    Und die Funktion:

                      
                    function setAutocomplete(e){  
                            e.setAttribute("autocomplete", "off");  
                    }
                    

                    Fehlerkonsole meckert nicht.

                    Gruß, jo

                    1. Mahlzeit Jo,

                      Och Ekki ich weiß das "klappt nichts" keine beschreibung ist aber es lässt sich doch entnehmen das sich _nichts_ geändert hat bis auf das aus onload, onX wurde...

                      Schon klar - aber was passiert? Absolut *gar nichts*?

                      Vor allem aber wäre interessant, welchen Browser Du benutzt - darüber hast Du bisher im gesamten Thread kein Wort verloren.

                      Hast Du Dir mal das Formularelement *NACH* dem Setzen des Attributs ausgeben lassen?

                      Das mit den Glaskugeln weißt Du schon, oder? Du kannst nicht erwarten, dass Deine Leser wild herumraten ... :-)

                      MfG,
                      EKKi

                      --
                      sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
                      1. Schon klar - aber was passiert? Absolut *gar nichts*?

                        Was passiert ist das die Autocomplete-Funktion weiterhin anbleibt.
                        Sie soll aber "off" aus sein.

                        Vor allem aber wäre interessant, welchen Browser Du benutzt - darüber hast Du bisher im gesamten Thread kein Wort verloren.

                        Egal was ich nehme, den FF den IE, den Safari aufm Mac, nirgendwo klappts.

                        Hast Du Dir mal das Formularelement *NACH* dem Setzen des Attributs ausgeben lassen?

                        Wie meinen?

                        Das mit den Glaskugeln weißt Du schon, oder? Du kannst nicht erwarten, dass Deine Leser wild herumraten ... :-)

                        Ja ;) Sorry.