Exécuter un autre script javascript lorsque l'utilisateur clique sur “ok” sur alertbox
Fondamentalement, j'ai un script qui vérifie la base de données toutes les 10 secondes et indique un utilisateur si les données sont modifiées avec une boîte d'alerte javascript. Mais j'ai besoin de la base de données également être changé lorsque l'utilisateur a vu l'alerte et cliqué sur OK. Ainsi est-il possible de faire une fonction javascript à exécuter lorsque l'utilisateur clique sur "OK" sur alerte javascript?
Ainsi, par exemple
<html>
<head>
<script type="text/javascript">
function show_alert()
{
alert("New data!");
}
</script>
</head>
<body>
<input type="button" onclick="show_alert()" value="Show alert box" />
</body>
</html>
Et lorsque l'utilisateur clique sur OK, il faut exécuter cette fonction
function UpdateDB()
{
jQuery.ajax({
type: "POST",
url: "update.php",
data: 'condition=ok',
cache: false,
});
}
- l'utilisation de confirmer la place de l'alerte tizag.com/javascriptT/javascriptconfirm.php
- Rien de mal avec alerte. Il ne veut pas de confirmation à l'utilisateur.
- Qu'en est
when user has seen the alert and clicked OK
- Justement! C'est pourquoi j'ai posté ma fait réponse utile! qui est promptement mis voté... ha ha
- Dans mon cas, il est important pour l'utilisateur d'avoir seulement la possibilité de cliquer sur OK, donc je ne peux pas utiliser la boîte de confirmation
- alors vous devriez reformuler votre question, de sorte que vous ne lui demandez pas de le OK pour le contrôle de quelque sorte... regardez ce que vous avez demandé! "Mais j'ai besoin de la base de données également être changé lorsque l'utilisateur a vu l'alerte et cliqué sur" OK". Les actions de l'utilisateur ne sont pas significatifs. Une fois que l'alerte est en place, la seule façon d'empêcher la poursuite de l'exécution est de fermer la fenêtre du navigateur, sans en cliquant sur "OK". Ce n'est pas la bonne façon d'aborder cette question, évidemment. Votre Alerte est 100% inutile (pour ne pas dire ennuyeux de l'utilisateur). Il y a de meilleures façons d'en informer quelqu'un que pop alertes sur leur visage.
- oui, en général ce ne serait probablement pas la meilleure façon de prévenir l'utilisateur. MAIS dans mon cas c'est exactement ce que je dois faire. La base de données doit être mis à jour lorsque l'utilisateur voit les nouvelles données et il ne peut pas être une option pour annuler la notification. C'est pourquoi j'ai justement demandé comment faire cela avec boîte d'alerte.
- ok, eh bien... je suis content que vous avez trouvé la réponse que vous recherchez. Je vais continuer à suggérer que vous devriez mettre l'alerte comme quelque chose qui arrive après la DB a effectivement été mis à jour, de sorte que, si rien d'autre, il sert à confirmer que l'opération a été couronnée de succès.
Vous devez vous connecter pour publier un commentaire.
La
alert
fonction interrompt l'exécution du code jusqu'à ce qu'il est rejeté. Cela signifie que le code que vous voulez exécuter après que l'alerte a été clickd peut simplement être placé après l'appel à laalert
méthode.success: function(response) { window.location.reload() }
qu'il ne cesse de rechargement encore et encore, même sans alerte en montrant.if(oldData != "") alert("New data!");
. Parce que vous navez pas mettre des accolades autour du contenu de laif
instruction, seule la première ligne après leif
est considéré comme faisant partie de laif
. Le reste est à l'extérieur de l'exécute indépendamment de votre condition de vérifier.Ce que vous êtes vraiment à la recherche pour le
confirm()
. Je ne pense pas que vous pouvez agir sur une alerte est ok appuyez sur (et vraiment vous ne voulez pas car il ne veut pas laisser à l'utilisateur la possibilité de changer leur esprit!)...Donc...