J'ai une page ASP.NET avec un code C #. J'essaie d'avoir l'affichage du code-derrière une "alerte" si l'index sélectionné d'un objet gridview est modifié sans sélectionner "Confirmer" ou "Annuler". Le code de détection si confirmer ou annuler a été sélectionné fonctionne, mais mon message n'est jamais affiché. Le code "alerte.show" a été emprunté à partir de: http://archive.devnewz.com/devnewz-3-20061129javascriptShershowMessageFromasqueCodeCodeBehind .html .
alerte.show fonctionne juste bien lorsqu'il est testé à partir de la page_load (), par exemple, mais pas dans ma méthode sélectionnée_index_changed. Une idée pourquoi? Peut-être avoir à voir avec comment alerte.show () Mise en œuvre? P>
<asp:Table ID="Table1" runat="server" CssClass="DefaultTable"> <asp:TableRow runat="server"> <asp:TableCell runat="server" Width="50%" VerticalAlign="Top" HorizontalAlign="Left"> <asp:UpdatePanel ID="detailsUP" runat="server" UpdateMode="Always" ChildrenAsTriggers="True"> <ContentTemplate> <!-- <asp:Label ID="label1" runat="server" Text="Car To Dispatch: " CssClass="DefaultLabel"></asp:Label> <asp:DropDownList ID="CarsDDL" runat="server" DataSourceID="VehiclesEDS" DataMember="CarNum" DataTextField="CarNum" AppendDataBoundItems="True" Font-Bold="True"> <asp:ListItem Selected="True" Text="-"></asp:ListItem> </asp:DropDownList> --> <asp:DetailsView ID="RideToAssignDV" runat="server" Height="400px" Width="400px" AutoGenerateRows="False" BackColor="White" BorderColor="#999999" BorderStyle="None" BorderWidth="1px" CellPadding="3" GridLines="Vertical"> <AlternatingRowStyle BackColor="#DCDCDC" /> <EditRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" /> <Fields> <asp:BoundField DataField="AssignedCar" HeaderText="Car" SortExpression="AssignedCar" NullDisplayText="---" /> <asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" NullDisplayText="---" /> <asp:BoundField DataField="Phone" HeaderText="Phone" SortExpression="Phone" NullDisplayText="---" /> <asp:BoundField DataField="NumPatrons" HeaderText="Size" SortExpression="NumPatrons" NullDisplayText="---" /> <asp:BoundField DataField="PickupAddress" HeaderText="Pickup Address" SortExpression="PickupAddress" NullDisplayText="---" /> <asp:BoundField DataField="DropoffAddress" HeaderText="Drop-Off Address" SortExpression="DropoffAddress" NullDisplayText="---" /> <asp:BoundField DataField="CreatedBy" HeaderText="Created By" SortExpression="CreatedBy" NullDisplayText="---" /> <asp:BoundField DataField="TimeOfCall" HeaderText="Call Time" SortExpression="TimeOfCall" ReadOnly="True" NullDisplayText="---" /> </Fields> <FooterStyle BackColor="#CCCCCC" ForeColor="Black" BorderStyle="Inset" BorderColor="#C6940D" HorizontalAlign="Center" Height="25px" /> <FooterTemplate> <asp:Button ID="confirmButton" runat="server" Text="Confirm" ForeColor="Green" HorizontalAlign="Center" OnClick="confirmButton_Click"/> <asp:Button ID="cancelButton" runat="server" Text="Cancel" ForeColor="Red" HorizontalAlign="Center" OnClick="cancelButton_Click" OnClientClick="displayTopTen();" /> </FooterTemplate> <HeaderStyle BackColor="#004812" Font-Bold="True" /> <PagerStyle BackColor="#999999" ForeColor="Black" /> <RowStyle BackColor="#EEEEEE" ForeColor="Black" /> </asp:DetailsView> </ContentTemplate> </asp:UpdatePanel> </asp:TableCell> <asp:TableCell runat="server" Width="50%"> <asp:UpdatePanel ID="mapUP" runat="server" UpdateMode="Conditional"> <ContentTemplate> <div id="map_canvas" style="height: 400px; width:400px;"></div> </ContentTemplate> </asp:UpdatePanel> </asp:TableCell> </asp:TableRow> </asp:Table> <br /> <asp:Label ID="GV_Label1" runat="server" Text="Car To Dispatch: " CssClass="DefaultLabel"></asp:Label> <asp:UpdatePanel ID="SelectCarUP" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:GridView ID="VehiclesGridView" runat="server" AllowPaging="True" AllowSorting="True" DataSourceID="VehiclesEDS" AutoGenerateColumns="False" onselectedindexchanged="VehiclesGridView_SelectedIndexChanged" BackColor="White" BorderColor="#999999" BorderStyle="None" BorderWidth="1px" CellPadding="3" GridLines="Vertical" ShowHeaderWhenEmpty="True" AutoPostBack="True"> <AlternatingRowStyle BackColor="#DCDCDC" /> <Columns> <asp:TemplateField ShowHeader="False"> <ItemTemplate> <asp:LinkButton ID="GVSelectButton" runat="server" CausesValidation="False" CommandName="Select" Text="Select"></asp:LinkButton> </ItemTemplate> </asp:TemplateField> <asp:BoundField DataField="CarNum" HeaderText="Car" ReadOnly="True" SortExpression="CarNum" /> <asp:BoundField DataField="CurrPassengers" HeaderText="Passengers" ReadOnly="True" SortExpression="CurrPassengers" /> <asp:BoundField DataField="MaxPassengers" HeaderText="Capacity" ReadOnly="True" SortExpression="MaxPassengers" /> <asp:BoundField DataField="Status" HeaderText="Status" ReadOnly="True" SortExpression="Status" /> <asp:BoundField DataField="StartAdd" HeaderText="Pick-Up Address" ReadOnly="True" SortExpression="StartAdd" /> <asp:BoundField DataField="EndAdd" HeaderText="Drop-Off Address" ReadOnly="True" SortExpression="EndAdd" /> <asp:BoundField DataField="AvgRideTime" HeaderText="Avg. Ride Time" ReadOnly="True" SortExpression="AvgRideTime" /> </Columns> <FooterStyle BackColor="#CCCCCC" ForeColor="Black" /> <HeaderStyle BackColor="#004812" Font-Bold="True" ForeColor="White" /> <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" /> <RowStyle BackColor="#EEEEEE" ForeColor="Black" /> <SelectedRowStyle BackColor="#C6940D" Font-Bold="True" ForeColor="White" /> <SortedAscendingCellStyle BackColor="#F1F1F1" /> <SortedAscendingHeaderStyle BackColor="#C6940D" /> <SortedDescendingCellStyle BackColor="#CAC9C9" /> <SortedDescendingHeaderStyle BackColor="#9F770B" /> </asp:GridView> </ContentTemplate> </asp:UpdatePanel>
5 Réponses :
Votre pour Exemple P> asp: listbox code> doit avoir
autopostback = "true" code> si le
sélectionné_index_changed code> événement doit être soulevé en modifiant l'index.
<asp:ListBox ID="ListBox1" runat="server"
AutoPostBack="True" OnSelectedIndexChanged="selected_index_changed">
<asp:ListItem>one</asp:ListItem>
<asp:ListItem>two</asp:ListItem>
<asp:ListItem>three</asp:ListItem>
</asp:ListBox>'
Si vous voulez une seule pièce de JavaScript côté client exécutant lorsque la page se charge, vous pouvez enregistrer un script de démarrage dans votre code-derrière: asp.net prendra soin de mettre le
Que se passe-t-il lorsque vous traversez votre code? Pouvez-vous poster la méthode complète?
Peut-être que la condition n'est pas vraie du tout. Avez-vous essayé o déboguer?
Est-ce que la propriété
autopostback code> de l'ensemble GridView définie sur True? Il serait peut-être que le
sélectionné_index_changed code> événement ne tire pas.
Merci pour les pensées, j'ai couru le débogueur et il est certainement d'entrer dans la méthode sélectionnée_index_changed ... elle passe même sur l'alerte.Show (), c'est juste que rien ne se passe. C'est pourquoi je suis un peu coincé .. j'ai posté le code complet ci-dessus ^^
... Ah semble avoir trouvé une autre voie ci-dessous -> toujours étrange, cela ne fonctionnerait pas comme ça ... merci pour l'aide!