Voici ce que j'essaie d'accomplir.Comment ajouter une fenêtre contextuelle de confirmation sur un bouton, cliquez sur MVC
1) quand un utilisateur clique sur sauvegarder, un pop-up apparaîtra 2) le pop-up dira, voulez-vous exécuter XYZ. oui pour continuer, pas de retour à l'écran, et rien 3) si non, fermez la fenêtre. J'ai la fonction de jquery pour détecter si le bouton d'annulation est cliqué, le popup sera fermé. 4) si oui, appelez ajax pour effectuer. Après Ajax effectuer la deuxième opération
quoi faire sur le numéro 4. ajax est la fonction asynchrone. Je dois le finir pour faire la deuxième fonction.
Quel est le conseil? Je ne veux pas dévier de la conception trop (à moins que je n'ai pas d'autre choix) car il y a une norme je dois suivre
grâce
code pseudo
@using (Html.BeginForm("action1", "controller1", FormMethod.Post, new { id = "form1" }))
{
@* various controls*@
<input type="submit" name="save1" id="Save1" value="Save" onclick="DoXY(event);" />
}
<script type="text/javascript">
function DoXY(e) {
if (DoX())
Doy();
}
function DoX()
{
$.post('@(Url.Action("funcX", "controller1"))', postData, function (result) {
if (result.Result != 'True')
{
//what to do, I know return false does not work
}
else
{
//what to do, I know return true does not work
}
});
function DoY()
{
//do something
$('#form1').submit(); //this will continue to next action
}
}
</script>
alors pourquoi le succès de l'appel ajax ne peut-il pas exécuter Doy()? –
Merci pour cette suggestion. Qu'est-ce que je n'y ai pas pensé – user12345