AtNotes Übersicht Willkommen Gast. Bitte einloggen oder registrieren.
19.06.13 - 08:47:26
Übersicht Hilfe Regeln Glossar Suche Einloggen Registrieren
News:
Schnellsuche:
+  Das Notes Forum
|-+  Lotus Notes / Domino 8
| |-+  ND8: Entwicklung - XPages (Moderatoren: eknori, Glombi, Thomas Schulte, m3)
| | |-+  File-Downloader & Validation Problem beim löschen
« vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: File-Downloader & Validation Problem beim löschen  (Gelesen 246 mal)
manderson
Junior Mitglied
**
Offline Offline

Beiträge: 68


WWW
« am: 22.10.12 - 15:14:00 »

hallo,

ich habe ein einfach Formular gebaut indem ein File-Upload field und ein File-Download field vorhanden ist, sowie weitere einfache input Felder die Plichtfelder sind. Ich möchte es den User erlauben seine hoch geladenen Anhänge vordem versenden zu löschen, falls man aus versehen was falsches hoch geladen hat.

Leider geht das scheinbar nicht, ein klick auf das kleine Icon löst jedes mal die Validation aus und die Datei wird nicht gelöscht. Ich habe die Validation für den File-Downloader schon ausgeschaltet ausgeschaltet (disableValidators="true") jedoch kein Erfolg.

Übersehe ich was wichtiges?  Huh
Gespeichert
Sven Hasselbach
Aktives Mitglied
***
Offline Offline

Geschlecht: Männlich
Beiträge: 165



WWW
« Antworten #1 am: 23.10.12 - 10:27:47 »

Nein, da ist wohl was "vergessen" worden bei der Implementierung des Controls... Lips Sealed

Ein Workaround ist ein kleines SSJS Snippet, das im beforeRenderResponse einfach die Validierung der Events des UIFileDownloadControls deaktviert.

Code:
<xp:this.beforeRenderResponse>
   <![CDATA[#{javascript:
      /***
       * disable validation for UIFileDownload control
       *
       * @param UIFileDownload component
       * @author Sven Hasselbach
       * @category SSJS
       * @category UI
       * @version 0.2
       */
      function disableFileDownloadValidation( fDownload:com.ibm.xsp.component.UIFileDownload ){
         if( fDownload === null )
            return;

         rekDisableFileDownloadValidation( fDownload );
      }

      function rekDisableFileDownloadValidation( component:javax.faces.component.UIOutput ){
         try{
            var children:java.util.List = component.getChildren();
            var it:java.util.Iterator = children.iterator();
            var curChild:javax.faces.component.UIOutput;

            while( it.hasNext() ){
               curChild = it.next();
               if( typeof( curChild ) === 'com.ibm.xsp.component.xp.XspEventHandler' )
                  curChild.setDisableValidators( true );
 
               rekDisableFileDownloadValidation( curChild );
            }
         }catch(e){}
      }

      disableFileDownloadValidation( getComponent( 'fileDownload1' ) );
   }]]>
</xp:this.beforeRenderResponse>


Einfach die Komponente anpassen, die im Funktionsaufruf hinterlegt ist (-> 'fileDownload1' )
Gespeichert

Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS
Impressum Atnotes.de - Powered by Syslords Solutions - Datenschutz | Partner: Tinte / Toner günstig  | handys