message d'alerte oubli de valider le message

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 le 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
avatar

demeter1
Membre actif

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

http://altitudetropicale.forums-actifs.com/index.forum
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 le 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.
avatar

Ea
Aidactif
Aidactif

Messages : 23484
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 le 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.
avatar

demeter1
Membre actif

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

http://altitudetropicale.forums-actifs.com/index.forum
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 le 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)
avatar

Ea
Aidactif
Aidactif

Messages : 23484
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 le 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.
avatar

demeter1
Membre actif

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

http://altitudetropicale.forums-actifs.com/index.forum
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 le Lun 17 Juin 2013 - 13:07

Up
avatar

demeter1
Membre actif

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

http://altitudetropicale.forums-actifs.com/index.forum
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 le Lun 17 Juin 2013 - 14:09

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

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

Ea
Aidactif
Aidactif

Messages : 23484
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 le Mar 18 Juin 2013 - 12:25

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

demeter1
Membre actif

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

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

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


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