J'ai un gridview dans un panneau de mise à jour et j'utilise une boîte de dialogue jQuery pour ajouter des entrées.Déclenchement du clic avec jQuery pour activer la fonction code-behind ne fonctionnant pas dans 1.4 - Fonctionne correctement dans 1.3.2
La boîte de dialogue appelle une fonction AJAX/JSON qui ajoute l'entrée. En cas de succès de cette fonction je jQuery déclenche un bouton clic sur un bouton caché
...
success: function(msg) {
$("[id$='_btnUpdateGrid']").trigger('click');
$("#new_dialog").dialog('close');
},
...
qui devrait frapper un gestionnaire d'événements dans le code derrière pour mettre à jour la source de données et actualiser la gridview.
<asp:Button ID="btnUpdateGrid" runat="server" OnClick="btnUpdateGrid_Click"
Text=" " Width="1px" Height="1px" Style="background-color:#F5F3E5; border:none;" />
Cela a très bien fonctionné avec 1.3.2. Mis à jour à la version 1.4.1 et il ne frappe plus le code-behind. L'AJAX fonctionne toujours mais je dois actualiser manuellement la page pour mettre à jour la grille.
En outre, je peux atteindre les gestionnaires d'événements côté client (par exemple OnClientClick = "alert ('hello')"), donc je sais que le clic se produit toujours, pas le gestionnaire d'événement code-behind. C'est comme si jquery bloquait la page de faire ça maintenant. J'ai vérifié cela en changeant simplement le numéro de version dans le chemin de référence du script et en voyant la fonctionnalité changer.
Est-ce un bug ou est-ce qu'il y a un autre moyen de le faire maintenant?
relivez-vous vos boutons après l'actualisation du UpdatePanel? UpdatePanels est insidieux et déconnectera vos événements. – Jason
Jason - Je sais de quoi tu parles mais dans ce cas je ne pense pas que ce soit nécessaire. Je n'ai pas eu à le faire pour 1.3.2. – HighHat