Je souhaite disposer d'un bouton de réinitialisation/suppression pour tous les filtres utilisés, mais je ne vois pas comment déclencher un événement de clic lié à ce bouton ... par exemple:
Que devrais-je déclencher et/ou attacher et passer à quoi afin de réinitialiser tous ces champs select2, select et input et restaurer tous les filtres à des valeurs null/empty?
En cliquant sur votre bouton, tout ce dont vous avez besoin est de réinitialiser la valeur de select2.
Voir cette méthode de programmation pour le réinitialiser https://select2.github.io/examples.html#programmatic
Tout ce dont vous avez besoin pour que votre bouton réinitialise toutes les entrées select2 au lieu de 1, comme indiqué dans l'exemple.
$('#yourButton').on('click', function() {
$('#yourfirstSelect2').val(null).trigger("change");
$('#yourSecondSelect2').val(null).trigger("change");
....
});
Juste au cas où vous utiliseriez la version 3.5.x
, alors il y a un petit changement comme on le voit ici http://select2.github.io/select2/#programmatic
$('#yourButton').on('click', function() {
$('#yourfirstSelect2').select2("val", "");
$('#yourSecondSelect2').select2("val", "");
....
});
Pour réinitialiser d'autres valeurs dans x-editable, vous pouvez suivre cette x-editable - réinitialiser les champs .
Il y a toujours un moyen jQuery de tout effacer sous une forme -
$('#formName')[0].reset();
Cela a fonctionné pour moi
Il réinitialisera toutes les options select2 sélectionnées lorsque le formulaire sera réinitialisé. Vous pourrez alors lancer cet événement au clic ou tout autre événement en fonction de vos besoins.
$("#id").val(null).trigger("change");
Selon votre capture d'écran, je suppose que tous vos filtres sont générés dynamiquement. Pour réinitialiser tout le champ, vous pouvez utiliser le code jQuery
suivant.
$( document ).ready(function() {
$('body').on('click','#resetButtonSelector', function() {
$("body select").select2("val", "");
$("body input").val("");
$('body select').val("")
});
});
Si vous avez un formulaire, vous pouvez utiliser ce code:
$( document ).ready(function() {
$('body').on('click','#resetButtonSelector', function() {
$("body select").select2("val", "");
$('#formId')[0].reset();
});
});
Voici quelques détails supplémentaires qui pourraient vous convenir,
$(':input','#formId')
.not(':button, :submit, :reset, :hidden')
.val('')
.removeAttr('checked')
.removeAttr('selected');
Veuillez consulter cet article pour: Réinitialiser un formulaire à plusieurs étapes avec jQuery
essayez ce code ci-dessous pour tout réinitialiser. trouvé sur https://vitalets.github.io/x-editable/docs.html#newrecord
<button id="reset-btn" class="btn pull-right">Reset</button>
<script>
$('#reset-btn').click(function() {
$('.myeditable').editable('setValue', null) //clear values
.editable('option', 'pk', null) //clear pk
.removeClass('editable-unsaved'); //remove bold css
$('#save-btn').show();
$('#msg').hide();
});
<script>