J'ai un formulaire qui a été créé dans un CRM, puis le code copié sur le site Web et mis à jour pour le rendre plus lisible.
Cependant, lorsque je copie le code, le "script" au bas du formulaire, qui effectue la validation du formulaire pour s'assurer que les champs obligatoires sont bien remplis, n'est PAS sauvegardé?
J'utilise TinyMCE Editor dans Joomla 3.5 et j'ai mis à jour les paramètres pour autoriser le script en le supprimant de la section "Éléments interdits" du plug-in, mais cela ne fonctionne toujours pas. J'ai également mis à jour le "Filtre de texte" sur Aucun filtrage.
La page Web que je teste en ce moment est la suivante: http://www.lsl.global/index.php/application-form
Des idées?
J'ai eu des problèmes similaires dans le passé où les scripts semblent être supprimés quels que soient les paramètres de filtrage du texte.
Désactiver temporairement l'éditeur
En tant que solution temporaire, vous pouvez définir temporairement l'éditeur par défaut sur "Aucune" chaque fois que vous modifiez le contenu.
Cela fonctionne mais n'est pas pratique, en particulier lorsque vous ou un autre administrateur oubliez de désactiver l'éditeur et que vous perdez le code lors de l'enregistrement d'une mise à jour.
Sourcerer
Une autre option qui fonctionne bien quels que soient les paramètres de l'éditeur ou du filtre de texte est la version gratuite ou payante de Regular Labs Sourcerer ou similaire.
Sourcerer garantit que le code est intégré à {source}{/source}
les balises de votre contenu sont préservées.
Nous n'avons jamais été en mesure de résoudre ce problème avec Tiny MCE. Comme Neil le suggère, vous devez simplement l'éteindre complètement lorsque vous l'utilisez ou utiliser Sourcerer à partir du composant anciennement appelé NoNumber.
Alternative:
Installez JCE en tant qu'éditeur. Vous avez la possibilité de le configurer pour autoriser les scripts, les iframes, etc., et vous disposez d'un meilleur éditeur avec plus de contrôle à la fin. JCE n'est pas parfait, mais il résout beaucoup de problèmes. Tiny MCE n'a jamais semblé travailler.
TinyMCE supprime les balises vides par défaut, donc une balise telle que <script src="myScript.js"></script
Serait supprimée car vide.
Vous pouvez essayer de changer les paramètres du plugin TinyMCE ( Extensions -> Plugins -> ** Editor - TinyMCE) et ajoutez le texte suivant au champ Extended Valid Elements
.
script[*]
Cela devrait vous permettre d'ajouter du code JavaScript directement dans l'éditeur TinyMCE. Assurez-vous simplement de coller le code dans la vue Code, et non dans l'éditeur WYSIWYG. Cela semble aussi fonctionner avec des scripts inline (<script>alert("Testing");</script>
)
Cette méthode est également très utile pour les balises vides utilisées pour les icônes, etc. Ajouter i[*]
Aux éléments valides étendus vous permettrait d'utiliser les icônes Font Awesome sans que le code soit supprimé:
<i class="fa fa-joomla" aria-hidden="true"></i>