2009-05-05 22 views
97

Javascript Valider popup, Je veux afficher Oui, Pas de bouton au lieu de OK et Annuler.Javascript Confirmer popup Oui, Aucun bouton au lieu de OK et Annuler

J'ai utilisé ce code vbscript:

<script language="javascript"> 
    function window.confirm(str) { 
     execScript('n = msgbox("' + str + '","4132")', "vbscript"); 
     return (n == 6); 
    } 
</script> 

cela ne fonctionne que dans IE, FF et Chrome, il ne fonctionne pas.

Existe-t-il des solutions pour y parvenir en Javascript?

Je veux aussi changer le titre du popup comme dans IE 'Windows Internet Explorer' est montré, je veux montrer ici mon propre nom d'application.

+0

J'ai fait un oui pas de dialogue moi-même c'est vraiment facile à personnaliser: https://github.com/stein189/YesNoDialog Vous pourriez essayer celui-ci si vous wa nt à – Szenis

Répondre

83

Malheureusement, il n'existe aucun support multi-navigateur pour l'ouverture d'une boîte de dialogue de confirmation qui n'est pas la paire OK/Annuler par défaut. La solution que vous avez fournie utilise VBScript, qui est uniquement disponible dans IE.

Je suggère d'utiliser une bibliothèque Javascript qui peut construire une boîte de dialogue basée sur DOM à la place. Essayez JQuery UI: http://jqueryui.com/

17

La seule façon que vous pouvez accomplir ceci d'une manière multi-navigateur est d'utiliser un framework comme jQuery UI et créer un dialogue personnalisé:

jquery Dialog

Il n » t fonctionne exactement de la même manière que la fenêtre contextuelle de confirmation intégrée, mais vous devriez être capable de faire ce que vous voulez.

+3

Pour plus de clarté, ce n'est pas le seul moyen - vous pouvez écrire le vôtre dans Javascript bien sûr, pas que ce soit la bonne chose à faire. – LeonardChallis

+1

@LeonardChallis mais en incluant une grande bibliothèque juste pour une fonctionnalité div modale est mieux? Je ne pense pas –

4

Vous ne pouvez pas faire cela multi-navigateur avec la fonction confirm() ou similaire. Je vous suggère fortement d'utiliser quelque chose comme la fonctionnalité jQuery UI dialog pour créer une boîte de dialogue HTML à la place.

6

Vous pouvez également utiliser http://projectshadowlight.org/jquery-easy-confirm-dialog/. C'est très simple et facile à utiliser. Il suffit d'inclure la bibliothèque jquery commune et un autre fichier uniquement:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js" type="text/javascript"></script> 
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script> 
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/themes/blitzer/jquery-ui.css" type="text/css" /> 
<script src="jquery.easy-confirm-dialog.js"></script> 
-9

la réponse très spécifique au point est de confirmer le dialogue Js Fonction:

confirm('Do you really want to do so'); 

Il montre la boîte de dialogue avec les annuler ok boutons, pour remplacer ces bouton avec oui non n'est pas une tâche si simple, pour cela vous devez écrire la fonction jQuery.

+1

Il voulait un Oui et Non. Cette confirmation donne seulement un ok ou annuler. C'est pourquoi cela est rejeté. –

2

Jetez un oeil à http://bootboxjs.com/

Très facile à utiliser:

bootbox.confirm("Are you sure?", function(result) { 
    Example.show("Confirm result: "+result); 
}); 
0

1) Vous pouvez télécharger et télécharger ci-dessous les fichiers sur votre site

<link href="/Style%20Library/css/smoothness/jquery.alerts.css" type="text/css" rel="stylesheet"/> 

2) après vous pouvez directement utiliser le code ci-dessous

$ .alerts.okButton = "oui"; $ .alerts.cancelButton = "non";

dans la fonction document.ready.

Veuillez essayer, ça marche.

Merci

3

La vedette (mais petite et simple) bibliothèque que vous pouvez utiliser est JSDialog: js.plus/products/jsdialog

Voici un exemple pour la création d'une boîte de dialogue avec boutons Oui et Non:

JSDialog.showConfirmDialog(
    "Save document before it will be closed?\nIf you press `No` all unsaved changes will be lost.", 
    function(result) { 
     // check result here 
    }, 
    "warning", 
    "yes|no|cancel" 
); 

+0

Hey, où est-ce que vous téléchargez ceci? – Gary