---
title: "Problem med två dropdown"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/82363-problem-med-två-dropdown"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Andy_K"
published: "2003-07-20T09:15:31.000Z"
updated: "2003-07-20T14:24:36.000Z"
replies: 6
views: 340
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/82363-problem-med-två-dropdown"
---

# Problem med två dropdown

## #1 — Andy_K, 2003-07-20T09:15Z

Sitter med ett litet problem med två dropdownlistor. Valet i den första dropdownen generar alternativ i den andra dropdownen, detta fungerar utan problem.

Problemet är när man ska skicka formuläret med en submit-knapp, då får jag endast med rätt värde från den första dropdownen, värdet i den andra dropdownen "nollställs" d.v.s. den får de första värdet i listan.

Jag antar att det är något postback-problem, men jag kan inte använda mig av if Not page.ispostback eftersom detta gör att den första dropdownen inte kan databinda den andra.

Lite krångligt att förklara :e så jag skickar med koden för den andra dropdownen...

```
    Private Sub Categories_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Categories.SelectedIndexChanged
        '
        ' ------ Datafyller dropdownmeny2 för val av UNDERKATEGORI ----------
        '

        Dim dtrSubCategorys As OleDbDataReader
        Dim strSQL As String
        Dim i As New SQLConn()

        Try
            strSQL = "SELECT subCategoryName, subCategoryId FROM subCategorys WHERE categoryId = " & Categories.SelectedIndex

            i.DBOpen()
            Dim dropdown2 As OleDbDataReader = i.returnDataReader(strSQL)

            SubCategories.DataSource = dropdown2
            SubCategories.DataTextField = "subCategoryName"
            SubCategories.DataValueField = "subCategoryId"

            SubCategories.DataBind()
            SubCategories.Items.Insert(0, New ListItem("-Underkategori-", -1))

            SubCategories.Visible = True

        Finally
            i.DBClose()
        End Try
    End Sub
```

Permalänk: https://www.webforum.nu/p/82363

## #2 — renholm, 2003-07-20T12:32Z

Kan du skicka hela koden, dvs page_load osv.

Permalänk: https://www.webforum.nu/p/1115152

## #3 — Andy_K, 2003-07-20T12:51Z

Här kommer koden. 

```
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        '
        ' ------ Datafyller dropdownmeny1 för val av KATEGORI ----------
        '

        Dim dtrCategories As OleDbDataReader
        Dim strSQL As String
        Dim i As New SQLConn()

        Try

            strSQL = "SELECT categoryName, categoryId FROM categorys"

            i.DBOpen()
            Dim dropdown1 As OleDbDataReader = i.returnDataReader(strSQL)

            Categories.DataSource = dropdown1
            Categories.DataTextField = "categoryName"
            Categories.DataValueField = "categoryId"
            Categories.DataBind()
            Categories.Items.Insert(0, New ListItem("-Kategori-", -1))

        Finally
            i.DBClose()
        End Try

        Dim dtrAdTypes As OleDbDataReader
        Try
            strSQL = "SELECT name, typeId FROM markettypes"

            i.DBOpen()
            dtrAdTypes = i.returnDataReader(strSQL)

            AdType.DataSource = dtrAdTypes
            AdType.DataTextField = "name"
            AdType.DataValueField = "typeId"
            AdType.DataBind()
        Finally
            i.DBClose()
        End Try
    End Sub
```

Permalänk: https://www.webforum.nu/p/1115163

## #4 — Dino, 2003-07-20T12:58Z

Koden för submitknappen är nog nödvändig att du visar oxå.

Välkommen till webForum. :)

Permalänk: https://www.webforum.nu/p/1115167

## #5 — Andy_K, 2003-07-20T13:09Z

Ok, får skylla på min dumma kompis som sa att de inte skulle behövas :e
Och tack för välkommnandet :birp 

```
Private Sub btnSend_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSend.Click
        Dim strSQL As String

        strSQL = "INSERT INTO products (customerId, typeId, subCategoryId, title, description, url) VALUES " & _
"(1, " & CInt(AdType.SelectedIndex) & ", " & SubCategories.SelectedItem.Value & ",'" & adTitle.Text & "' ,'" & adBody.Text & "' ,'" & adUrl.Text & "')"
        Response.Write(strSQL)
        Response.End()

    End Sub
```

Permalänk: https://www.webforum.nu/p/1115170

## #6 — Dino, 2003-07-20T13:58Z

Gjorde detta och då får jag fram värderna utan problem.

```
[b]I .aspx[/b]
<asp:DropDownList ID="Categories" AutoPostBack="true" OnSelectedIndexChanged="Categories_SelectedIndexChanged" Runat="server"/>
<asp:DropDownList ID="SubCategories" Runat="server"/>
<asp:Button ID="btnSend" OnClick="btnSend_Click" Text="Ta fram" Runat="server" />

-----------------------

[b]I code-behind[/b]
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
   if not ispostback then
      binddata()
   end if
end sub

sub binddata()
   'fyll första dropdownen
end sub

Private Sub Categories_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Categories.SelectedIndexChanged
   'fyll andra dropdownen
end sub

Private Sub btnSend_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSend.Click
   Response.Write("<li>" + Categories.SelectedIndex)
   Response.Write("<li>" + SubCategories.SelectedItem.Value)
end sub
```

Permalänk: https://www.webforum.nu/p/1115198

## #7 — Andy_K, 2003-07-20T14:24Z

Tack, nu funkar de iaf! :)

Permalänk: https://www.webforum.nu/p/1115228

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/82363-problem-med-två-dropdown
