Bonjour,
J'ai l'impression que le template xslc:ButtonPad n'est pas adapté pour des applis PHP (XMLC_UseXMLC_Action = 1).
Exemple :
Dans le code ci dessous, le paramètre DeleteAction va générer le code javascript suivant (extrait) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <xsl:call-template name="xslc:ButtonPad"> <xsl:with-param name="Button_Submit_Click">ProcessPwd(); return false;</xsl:with-param> <xsl:with-param name="DeleteAction"> <xsl:value-of select="/document/Aliases/DLL"/>DeleteUSER</xsl:with-param> </xsl:call-template>
La fonction javascript ConfirmDelete (xslc.js) va modifier l'attribut action du formulaire avant de le poster :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 onclick="ConfirmDelete('MainForm','DeleteUSER', 'Etes vous sûr de vouloir supprimer cet élément ?');return false;"
Le problème est que quand XMLC_UseXMLC_Action=1, c'est le champ XMLC_Action qu'il faut modifier, et non pas l'attribut action du formulaire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function ConfirmDelete(FormName, DeleteAction, Prompt) { var F = document.forms[FormName]; if (confirm(Prompt)) { F.action = DeleteAction; F.submit(); } }
Remède ?
Ca suppose que le code javascript devrait être au courant qu'on soit en mode
XMLC_UseXMLC_Action=1 (variable js globale du type XMLC_PictosPath ?), et que le test devrait être effectué dans ConfirmDelete pour affecter l'action du formulaire au bon endroit.
Partager