Prototype / scriptaculous event

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Prototype / scriptaculous event

    hi,
    habe mir mit Prototype / scriptaculous (und dieser function ) eine dialogbox mit einer form gebaut.
    Merkwürdigerweise funktioniert der submit Button nicht, obwohl dieser laut Firebug richtig eingebaut ist:
    PHP-Code:
    <form name="daForm" action="index.php?action=viewAllEntryChange&workid=14220" method="post">
    // diverse input felder
    <input type="submit" value="test"/>
    </
    form
    In dem Script das ich als Basis benutze steht u.a. folgendes:
    PHP-Code:
        // Hide the overlay when clicked. Ignore clicks on the dialog.
        
    Event.observe(this.overlay'click'this.hide.bindAsEventListener(this));
        
    Event.observe(this.dialog'click',  function(event) { Event.stop(event) }); 
    Hätte ja die Vermutung das damit Events bei Clicks auf dem Dialog unterdrückt werden.
    Was mich dann aber wundert ist dass ein div mit onclick:
    PHP-Code:
    <form name="daForm" action="index.php?action=viewAllEntryChange&workid=14220" method="post">

    <
    input type="submit" value="test"/>
    </
    form>
    <
    div onclick="document.daForm.submit()">bla</div
    die Form abschickt....
    Kann mir einer das "Wunder" erklären oder zeigen wie ich den Submit Button freigeben kann?
    THX
    "I don't want to belong to any club that would accept me as a member."

    Groucho Marx

  • #2
    Ich hatte mal das Problem das dass Wort "test" wohl irgendwie als var oder ähnlichem vergeben war.

    Versuch doch mal ne andere ID.

    Kommentar


    • #3
      Ich hatte mal das Problem das dass Wort "test" wohl irgendwie als var oder ähnlichem vergeben war.
      Schade das war es nicht....
      Man sieht auch das der Button optisch regiert, aber eben nicht die Form abschickt.
      Was auch komisch ist:
      wenn ich den cursor in ein Input Feld setze sieht man normalerweise einen blinkenden Balken als Zeichen dass das Feld den Focus hat.
      Das ist nicht der Fall; Eingaben funktionieren aber.
      Wie könnte ich das "normale" Verhalten wiederherstellen - mir wäre es egal, weiß aber das die User von so was irritiert werden...
      Zuletzt geändert von mcmurphy; 30.09.2008, 13:56.
      "I don't want to belong to any club that would accept me as a member."

      Groucho Marx

      Kommentar


      • #4
        Re: Prototype / scriptaculous event

        Was ist denn this.dialog in deinem Skript? Kann gut sein, dass dadurch ein Klick auf den Submitbutton ohne Erfolg ist. Denke, da bist du auf das Bubbling von Events gestoßen.

        Kommentar


        • #5
          THX Php Desaster, habe mal nach Event Bubbling gegoogelt und führe mir das mal zu Gemüte.
          Kennst du noch einen guten Link zum Thema?
          this.dialog ist die Box.
          Das Script ist ja nicht von mir, habe ich nur als Basis verwendet (siehe den Link in meinem ersten Post).
          Event.observe(this.dialog, 'click', function(event) { Event.stop(event) });

          verstehe ich so, das alle clicks die in this.dialog ausgelöst werden gestoppt werden.
          Verstehe dann aber nicht das
          <div onclick="document.daForm.submit()">bla</div>
          in this.dialog ausgelöst wird.
          und die Form wird ja eigentlich nicht mit onclick ausgelöst (weiß jetzt auch nicht ob das drücken eines Submit Buttons das Event click oder direkt das Event submit auslöst)
          Wie müsste ich den Event.observer umschreiben das submit nicht gefiltert wird?
          "I don't want to belong to any club that would accept me as a member."

          Groucho Marx

          Kommentar

          Lädt...
          X