message d'alerte oubli de valider le message

2 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu message d'alerte oubli de valider le message

Message par demeter1 Jeu 13 Juin 2013 - 6:55

Bonjour à tous, voici un javascript personnel qui avait pour fonction d'envoyer un message d'alerte lorsqu'un membre avait oublier de valider son message et qui, avec le nouvel éditeur ne fonctionne tout simplement plus.

Cette fonctionnalité était bien utile pour les quelques membres distraits qui oubliaient de cliquer sur envoyer après la saisie d'un message.

Voici le javascript
Code:
$(function(){var t=$("#text_editor_textarea");if(!t.length){return}var empty=/^\s*$/.test(t.val());t.keydown(function(e){if(empty&&!/^\s*$/.test(t.val())){$(window).bind("beforeunload",function(){return"Vous avez commenc\u00e9 \u00e0 \u00e9crire un message"});empty=false}else{if(!empty&&/^\s*$/.test(t.val())){$(window).unbind("beforeunload");empty=true}}});t.parents("form").submit(function(){$(window).unbind("beforeunload")})});










Une idée pour rendre valide ce javascript pour le nouvel éditeur ??

Merci par avance pour vos réponses.


Dernière édition par demeter1 le Mar 18 Juin 2013 - 12:26, édité 3 fois
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: message d'alerte oubli de valider le message

Message par Ea Jeu 13 Juin 2013 - 19:16

Bonjour,


Modifier le script en ceci devrait fonctionner :

Code:
$(function () {
    if(!$("#text_editor_textarea")["sceditor"]) return;
     var t = $("#text_editor_textarea").sceditor("instance");
  
    var empty = /^\s*$/.test(t.val());
    t.keyDown(function (e) {
        if (empty && !/^\s*$/.test(t.val())) {
            $(window).bind("beforeunload", function () {
                return "Vous avez commenc\u00e9 \u00e0 \u00e9crire un message"
            });
            empty = false
        } else {
            if (!empty && /^\s*$/.test(t.val())) {
                $(window).unbind("beforeunload");
                empty = true
            }
        }
    });
    $("form[name='post'][action='post']").submit(function () {
        $(window).unbind("beforeunload")
    })
});
Cordialement.
Ea

Ea
Aidactif
Aidactif

Messages : 23583
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: message d'alerte oubli de valider le message

Message par demeter1 Jeu 13 Juin 2013 - 20:52

Bonjour Ea, merci pour cette aide.
Les boutons de l'éditeur ayant disparu, je teste dés que cette situation est rétablie. Désolé pour ce contretemps.
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: message d'alerte oubli de valider le message

Message par Ea Jeu 13 Juin 2013 - 22:58

Il faut rajouter un niveau de retardement ready je pense ( sinon le code agit avant que l'éditeur soit présent ), cela donnerait donc plutôt :

Code:
$(function(){ $(function () {
    if(!$("#text_editor_textarea")["sceditor"]) return;
     var t = $("#text_editor_textarea").sceditor("instance");
  
    var empty = /^\s*$/.test(t.val());
    t.keyDown(function (e) {
        if (empty && !/^\s*$/.test(t.val())) {
            $(window).bind("beforeunload", function () {
                return "Vous avez commenc\u00e9 \u00e0 \u00e9crire un message"
            });
            empty = false
        } else {
            if (!empty && /^\s*$/.test(t.val())) {
                $(window).unbind("beforeunload");
                empty = true
            }
        }
    });
    $("form[name='post'][action='/post']").submit(function () {
        $(window).unbind("beforeunload")
    })
})});
Cordialement.


Dernière édition par Ea le Lun 17 Juin 2013 - 14:09, édité 1 fois (Raison : post changé en /post)
Ea

Ea
Aidactif
Aidactif

Messages : 23583
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: message d'alerte oubli de valider le message

Message par demeter1 Ven 14 Juin 2013 - 1:13

Bonsoir Ea,
J'ai fini par récupérer les boutons de l'éditeur. Le script fonctionne mais malheureusement la fenêtre d'alerte s'ouvre également lorsque l'on souhaite envoyer le message.
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: message d'alerte oubli de valider le message

Message par demeter1 Lun 17 Juin 2013 - 13:07

Up
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: message d'alerte oubli de valider le message

Message par Ea Lun 17 Juin 2013 - 14:09

j'ai fait une erreur, il faudrait essayer avec :

Code:
action='/post'
plutôt
Ea

Ea
Aidactif
Aidactif

Messages : 23583
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: message d'alerte oubli de valider le message

Message par demeter1 Mar 18 Juin 2013 - 12:25

Fonctionne à merveille. Un grand merci EA pour cette aide.
demeter1

demeter1
Membre actif

Masculin
Messages : 8993
Inscrit(e) le : 23/01/2009

https://altitudetropicale.forums-actifs.com/
demeter1 a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum