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

demeter1
+ Hyperactif +

Masculin
Messages : 8098
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.

Ea
Aidactif
Aidactif

Messages : 23417
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.

demeter1
+ Hyperactif +

Masculin
Messages : 8098
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)

Ea
Aidactif
Aidactif

Messages : 23417
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.

demeter1
+ Hyperactif +

Masculin
Messages : 8098
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

demeter1
+ Hyperactif +

Masculin
Messages : 8098
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

Ea
Aidactif
Aidactif

Messages : 23417
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.

demeter1
+ Hyperactif +

Masculin
Messages : 8098
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