J’ai un object DropDownList dans ma page Web. Lorsque je clique dessus et que je sélectionne une valeur différente, rien ne se passe, même si une fonction est connectée à l’événement SelectedIndexChanged
. Je vais essayer de publier mon code ici aussi régulièrement que possible:
Tout d’abord, le code HTML de l’object réel:
Et c’est cette fonction, itemSelected
:
protected void itemSelected(object sender, EventArgs e) { Response.Write("Getting clicked; " + sender.GetType().ToSsortingng()); FileInfo selectedfile; Response.Write("alert('Hello')"); foreach (FileInfo file in logs) { if (file.Name == logList.Items[logList.SelectedIndex].Text) { Response.Write("alert('Hello')"); } } }
Aucune des réponses n’apparaît et cette partie de JavaScript n’est jamais exécutée. Je l’ai essayé sur la dernière version 3.6 de Firefox, ainsi que sur Internet Explorer 8. Il est servi depuis un ordinateur Windows Server 2003 R2, exécutant ASP.Net avec le .NET Framework version 4.
Si quelqu’un peut aider, ce serait formidable.
Définissez la propriété DropDownList AutoPostBack
sur true.
Par exemple:
essayez de définir AutoPostBack="True"
sur le DropDownList.
Je connais son message un peu ancien, mais j’aimerais néanmoins append quelque chose aux réponses ci-dessus.
Dans certains cas, la ” valeur ” de plusieurs éléments de la liste déroulante est dupliquée / identique. Donc, assurez-vous de ne pas avoir de valeurs répétées dans les éléments de la liste pour déclencher cet événement ” onselectedindexchanged ”
Ajouter la propriété ViewStateMode="Enabled"
et EnableViewState="true"
Et AutoPostBack="true"
dans drop DropDownList
Pour plus de détails cliquez ici
Assurez-vous également que la page est valide. Vous pouvez le vérifier dans les outils de développement des navigateurs (F12)
Dans l’onglet Console, sélectionnez la cible / image correcte et recherchez la propriété [Page_IsValid]
Si la page n’est pas valide, le formulaire ne sera pas soumis et ne déclenchera donc pas l’événement.
Pour moi, la réponse était l’atsortingbut de page aspx, j’ai ajouté Async = “true” aux atsortingbuts de page et cela a résolu mon problème.
<%@ Page Language="C#" MasterPageFile="~/MasterPage/Reports.Master"..... AutoEventWireup="true" Async="true" %>
Ceci est la structure de mon panneau de mise à jour
insted de ce que vous avez écrit du code, vous pouvez l’écrire directement dans l’événement SelectedIndexChanged du contrôle dropdownlist par exemple
protected void ddlleavetype_SelectedIndexChanged(object sender, EventArgs e) { *************** *********** **** }