Archief - ASP.NET: autopostback en dan postcodes invullen

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

bluetorch002

Legacy Member
Code:
Sub postcodesinvullen(ByVal s As Object, ByVal e As EventArgs)
        
        Dim strCountry As String
        strCountry = Trim(DropDownList2.SelectedItem.Value)
        
        
        
        datasourcePostCodes.FilterParameters.Add("strLand", strCountry)
        
        
       
    End Sub
    
    
</script>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    
    <asp:SqlDataSource ########secret#####>
        </asp:SqlDataSource>
        
        <asp:SqlDataSource ####secret#####>
            <SelectParameters>
                <asp:Parameter Name="strLand" DefaultValue="Belgium" Type="String"  />
            </SelectParameters>
    </asp:SqlDataSource>
    
    
    <form id="form1" runat="server">
    <div>
        <br />
        <asp:DropDownList ID="DropDownList2" AutoPostBack="True" runat="server" DataSourceID="datasourceCountries" DataTextField="INTL_NAME" DataValueField="INTL_NAME" Width="223px" OnSelectedIndexChanged="postcodesinvullen">
            <asp:ListItem Selected="True" Value="">please select a value</asp:ListItem>
        </asp:DropDownList><br />
        <br />
        <asp:DropDownList ID="DropDownList1" AutoPostBack="True" runat="server" DataSourceID="datasourcePostCodes" DataTextField="postal_code" DataValueField="postal_code" Width="223px">
            <asp:ListItem Selected="True">please select a value</asp:ListItem>
        </asp:DropDownList><br />
        <br />
        <br />
        <br />
        <asp:Label ID="Label1" runat="server" Text="Label" Width="221px" OnLoad="func"></asp:Label>&nbsp;</div>
    </form>
</body>
</html>

Wat is hier mis mee ?

de dropdownlist2 is die waar alle landen in staan
de list1 is die met alle postcodes met defaultvalue Belgium

ik probeer na een selectedindexchanged een sub postcodesinvullen aan te roepen en de param van de selectie te veranderen maar dit gaat blijkbaar niet op de manier die ik probeer.

Wat doe ik verkeerd?

Mvg

Dank bij voorbaat

Boddah

Legacy Member
na het selecteren van een land, gebeurt er een postback en wordt de pagina terug geladen. met andere woorden: je dropdownlists worden terug ingeladen, je selectie wordt ongedaan gemaakt en de 2e dropdownlist zal dus leeg blijven.

wat je moet doen is een controle zetten in de PageLoad method op een postback. in C# is dit 'IsPostBack', hoe dit in VB heet weet ik niet, mogelijk hetzelfde.

bluetorch002

Legacy Member
heb de onselectedindex changed weggedaan en dan dit erbijgezet

Code:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
        If Not Page.IsPostBack Then
            Label1.Text = DropDownList1.SelectedItem.Text
            
        Else
            Label1.Text = DropDownList1.SelectedItem.Text
            
            Dim strCountry As String
            strCountry = Trim(DropDownList2.SelectedItem.Text)
        
            datasourcePostCodes.FilterParameters.Add("strLand", strCountry)
                
            DropDownList1.DataSourceID = "datasourcePostCodes"
            DropDownList1.DataBind()
        End If
    End Sub

steeds niets

Boddah

Legacy Member
wordt in het 2e geval (else-tak) je Label1 niet gevuld met je selectie?
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan