La prévention ModalPopupExtender à compter de la clôture pendant/après la Publication
Comment puis-je empêcher mon asp:ModalPopupExtender de la fermeture après ou au cours d'une publication sur le serveur??
Voici mon code:
JAVASCRIPT
//Confirm popup Ok button
function OnOk() {
$('#confirmPopup').hide();
ClickSaveButton(); //does a postback
ShowGridPopup();
}
ASP.NET AJAX
<asp:ModalPopupExtender BehaviorID="confirmPopup" ID="confirmPopup" runat="server"
TargetControlID="butConfirm" PopupControlID="ConfirmView" BackgroundCssClass="modalBackground"
OnOkScript="OnOk();" OnCancelScript="OnCancel();"
OkControlID="yesButton" CancelControlID="noButton">
</asp:ModalPopupExtender>
Peu importe si je l'appelle ShowGridPopup()
avant ou après la publication de la méthode ClickSaveButton()
, la fenêtre contextuelle disparaît encore. Comment puis-je éviter cela?
MODIFIER
Voici le code pour le ShowGridPopup()
et ClickSaveButton()
function ShowGridPopup() {
if (getID() == "Popup1") {
ShowGridPopup1();
} else if (getID() == "Popup2") {
ShowGridPopup2();
}
}
function ClickSaveButton() {
var _id = $('a[id$="butSave"]').attr("ID");
__doPostBack(_id.replace("_", "$"), '');
}
Dans
J'ai ajouté le code comme une modification...
ClickSaveButton();
, voulez-vous effectuer une publication complète ou un asyncpostback? En outre, le code de ClickSaveButton
et ShowGridPopup
aiderait à trouver le problème.J'ai ajouté le code comme une modification...
OriginalL'auteur JF Beaulieu | 2011-05-27
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser
UpdatePanel
, de sorte que le ModalPopupExtender ne sera pas caché après la publication. Voir cet exemple ci-dessous :Aspx:
Code derrière :
OriginalL'auteur HQtunes.com
J'ai trouvé un moyen de passer par ce, voici ma solution: Vous devez créer un nouveau
HiddenField
contrôleur du côté serveur en ASP qui sera utilisé pour stocker l'ID de l'ModalPopupExtender
que vous voulez afficher après la publication, il est défini comme null si il n'y a pas de pop-up à être montré.Ensuite, nous devons définir l'ID de la
HiddenField
avant d'utiliser le enregistrer l'événementMaintenant, dans le code derrière, tout ce que nous devons faire est de vérifier la valeur de la
HiddenField
champ de texte et nous pouvons juste faire un.Show()
sur le bon popup en conséquence.OriginalL'auteur JF Beaulieu
Utilisation, ModalPopupExtender1.Show() avec panneau de mise à jour pour éviter toute actualisation de la page. Cela a fonctionné parfaitement pour moi.
OriginalL'auteur ZahidKakar