• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Elegantere Version dieses Codes

löffel

New member
Hi,

Ich versuche gerade eine elegantere Lösung für folgenden Code zu finden. Leider beschränken sich meine JS Kenntnisse auf ein Minimum.

Ich habe einige Variablen, nach folgendem Muster:

HTML:
        var var1 = document.getElementById("element:1");
        var var2 = document.getElementById("element:2");

Danach verwende ich für jede Variable diesen Code, heißt bei 20 Variablen benötige ich diesen Code 20 mal:

HTML:
        jQuery(document).ready(function($){
            $(var1).observe("change", function(e){
                Validation.validate($(var1));
                $j(var1).parent().append("<i class='fa fa-2x fa-check-circle-o'></i>");
            });
        });

Alternativ könnte ich die input Felder auch so finden:
var fields = document.getElementsByTagName("input");

Wäre es dann nicht möglich, den jQuery Code in einem for Loop laufen zu lassen?

Vielen Dank im Voraus!
 
Zuletzt bearbeitet von einem Moderator:
NB: Doppelpunkte in IDs sind keine gute Idee. Macht die Ansprache mit CSS viel schwieriger.

- - - Aktualisiert - - -

PS: aber soll da wirklich bei jedem change-Event ein <i> angehängt werden - das werden dann ja immer mehr...
 
Eben damit nicht bei jedem Div ein i angehäng wird, hab ich Validation.validate(); extra für jede Variable angegeben. Mit "this" bekomme ichs nicht hin...
 
Das hat das denn mit dem validate() zu tun? Jedes mal, wenn das change-Event feuert wird ein <i> erzeugt... komplett unabhängig von der Validierung.
Ja und genau aus diesem Grund geb ich das change event doch für jede Variable extra an. Damit eben nicht bei irgend einem change das <i> angehängt wird. Ich kenn mich leider zu wenig aus um es besser zu erklären, jedoch funktionert mein Code wie er soll und hängt das <i> nur da an wo es hingehört und das nur einmal. Ich hatte lediglich nach einer schöneren Version meines Codes gesucht - funktionieren tut meiner ja.
 
Zurück
Oben