So arbeite ich in ASP.net zum ersten Mal, also weiß ich nicht, ob es die If-Anweisung ist, die gebrochen ist oder ob es etwas seltsam zwischen Client-Server ist, die ich nicht verstehe noch .... Unten wird mein Server-Seite und Client-Seite Code sein. Ich habe meinen Code in eine Protokolldatei schreiben, so dass ich weiß, dass ich die korrekte Syntax in meiner If-Anweisung habe. Was dieses Programm bisher gemacht hat, ist, dass es zwei Dropdown-Listen gibt, die Auswahl aus der ersten wird bestimmen, was in der zweiten ist. Verwenden Sie fest codierte Werte für den Test zuerst, bevor Sie ihn in eine SQL-Datentabelle umwandeln. Im Moment wähle ich den ersten Wert und nichts passiert. Jede Hilfe, die herausfindet, was damit nicht funktioniert, wird geschätzt.Wenn Anweisung das Ereignis nicht auslöst
Server Side
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using FIS_DashBoard_Web.cs;
namespace FIS_DashBoard_Web.www
{
public partial class PSBSecondary : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
Utils ut = new Utils();
protected void ddlLine_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlLine.SelectedItem.Equals("WSM2"))
{
ddlBuiltProduct.Items.Add("GFE Control Board");
}
ut.WriteToLog(ddlLine.SelectedItem.ToString());
}
}
}
Client Side
<div style="text-align: right;">
<asp:Table ID="Table2" runat="server">
<asp:TableRow>
<asp:TableHeaderCell Text="Line"/>
<asp:TableCell>
<asp:DropDownList ID="ddlLine" runat="server" AutoPostBack="true" OnSelectedIndexChanged="ddlLine_SelectedIndexChanged">
<asp:ListItem Value="WSM1" Text="WSM1"/>
<asp:ListItem Value="WSM2" Text="WSM2" />
<asp:ListItem Value="Pillarhouse 1" Text="Pillarhouse 1"/>
<asp:ListItem Value="Pillarhouse 2" Text="Pillarhouse 2"/>
</asp:DropDownList>
</asp:TableCell>
</asp:TableRow>
<asp:TableRow>
<asp:TableHeaderCell Height="20" Text="What Product Was Built?"/>
<asp:TableCell>
<asp:DropDownList ID="ddlBuiltProduct" runat="server" AutoPostBack="true">
</asp:DropDownList>
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</div>
Errr. der _first_ Wert ist 'WSM1'? Also, das ist nicht gleich WSM2. Die Bedingung 'if' ist also nicht erfüllt. –
Könnten Sie die Listenelemente wie folgt definieren: ' ' verbesserte die Lesbarkeit. Setzen Sie einen Haltepunkt auf die if-Anweisung, um zu sehen, ob das selectedItem wirklich gleich 'WSM2' ist. –
Max
Legen Sie Haltepunkte fest, gehen Sie durch Ihren Code und überprüfen Sie Ihre Variablen. – CodeCaster