Tach!
$(".erinnerung").click(function(){ var $erinnerung = $(".erinnerung"); var $insert_erinnerung = $(".insert_erinnerung"); var $fa = $(".fa ");
Bist du sicher, dass du in diesem Click-Handler sämtliche .erinnerung, sämtliche .insert_erinnerung und sämtliche .fa des gesamten Dokuments ansprechen möchtest und nicht nur diejenigen unterhalb des geklickten Erinnerungs-Elements? Ansonsten wäre es besser statt $erinnerung ein
var $this = $(this);
anzulegen und davon ausgehend die anderen (Nachfahren-)Elemente mit .find(...) zu suchen. Beispielsweise wäre $fa
dann $this.find('.fa')
. - Im Eventhandler zeigt this
auf das auslösende Element und $(this)
macht daraus ein jQuery-Objekt.
$insert_erinnerung.slideToggle();
Kommt immer noch doppelt vor, kann nach außerhalb des if-else.
$("#datepicker").removeAttr("required", true);
removeAttr()
will nur einen Parameter haben.
var $el = $(".text"); $el.text($el.text() == "Doch nicht" ? "Erinnerung hinzufügen": "Doch nicht");
Den Text kannst du ja auch in Abhängigkeit des if-else setzen und muss dafür keine Extrawurst braten. (Auch hier besser .find() verwenden.)
Ich habe mir Gunnars Posting nochmals angesehen, allerdings verstehe ich noch immer nicht genau, wie er das mit beiden Texte im Button vorstellt, ich möchte ja immer nur einen sehe. Leider hat er mir darauf keine Antwort mehr gegeben.
Er meint, du sollst zwei Elemente/Container anlegen, eins für den einen Fall, eins für den anderen Fall, inklusive deren Kinder und Texte in fertiger Ausführung, und dann nur die Sichtbarkeit umschalten. Heb dir die jetzige Lösung auf, die funktioniert ja wenigstens und dann kannst du mal das probieren.
dedlfix.