René: onClick ist nicht erlaubtes Attribut für <input>?

Hallo,

ich habe ein Formular, da gibt es ein <textarea>-Feld In diesem soll auch formatierbarer Text reingeschrieben werden können. Ich habe das gelöst durch eine Javascriptfunktion die durch anklicken eines buttons (<input type="button" value="Fett" onClick="schreibe_fett()" />) das a<b></b> Tag gleich in das Textarea mit dem gewünschten Text (Wird über promptbox eingegeben) einsetzt. Das Formular wird letztendlich von einem PHP-Script weiterverarbeitet. Beim Testen der Seite mit dem W3C Validator wird mir jedoch gemeldet das das Attribut onClick nicht erlaubt ist im Element <input>. Was hat sich denn das W3C dabei gedacht? Button sind doch zum anklicken da. Gibt es dafür eine valide Lösung?

Gruß
René

  1. Hi,

    <input type="button" value="Fett" onClick="schreibe_fett()" />

    aus diesem /> entnehme ich, daß Du einen XHTML-DocType hast?

    Beim Testen der Seite mit dem W3C Validator wird mir jedoch gemeldet das das Attribut onClick nicht erlaubt ist im Element <input>.

    onClick ist in XHTML tatsächlich nicht erlaubt. Genausowenig wie INPUT, inPuT, ONCLICK, onCLICK usw.
    Ja, XHTML ist case-sensitiv!

    Was hat sich denn das W3C dabei gedacht? Button sind doch zum anklicken da.

    Wenn Du falschen Code produzierst, kannst Du das doch dem W3C nicht vorwerfen.

    cu,
    Andreas

    --
    Der Optimist: Das Glas  ist halbvoll.
    Der Pessimist: Das Glas ist halbleer.
    Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
    1. <input type="button" value="Fett" onClick="schreibe_fett()" />

      aus diesem /> entnehme ich, daß Du einen XHTML-DocType hast?

      Ja, richtig.

      onClick ist in XHTML tatsächlich nicht erlaubt. Genausowenig wie INPUT, inPuT, ONCLICK, onCLICK usw.
      Ja, XHTML ist case-sensitiv!

      OK, danke. Da hätte ich ja eigentlich selber drauf kommen können. Mit onclick geht es.

      Was hat sich denn das W3C dabei gedacht? Button sind doch zum anklicken da.

      Wenn Du falschen Code produzierst, kannst Du das doch dem W3C nicht vorwerfen.

      :-) richtig. Dachte nur onclick ginge generell nicht, was ja unlogisch wäre.

      Danke nochmal

      1. Hi René,

        <input type="button" value="Fett" onClick="schreibe_fett()" />

        hm, magst du das nicht lieber per CSS lösen? Überall EventHandler einzufügen ist doch Overkill...

        input:active { font-weight:bold; }
         input:focus  { ... }

        http://selfhtml.teamone.de/css/eigenschaften/pseudoformate.htm#link_visited_hover_active_focus

        Das erscheint mir deutlich einfacher, funktioniert in den meisten Browsern (der Prozentsatz der CSS-unfähigen Browser ist IMHO wesentlich geringer als der mit deaktiviertem Javascript) und kann bei Bedarf auch ausgelagert werden, spart somit Code.

        Wenn es sich nur um Buttons handelt, kannst du input[type="button"]:active verwenden, aber das kapiert der M$IE wieder mal nicht. Verwende dann besser eine Klasse.

        LG Roland

  2. Hi René,

    mit der von dir gewünschten Funktion hat das nicht viel zu tun, wie ich soeben gelesen habe... :/

    Naja, war's halt für's Archiv - soll vorkommen.

    LG Roland