<asp:DropDownList> + document.getElementById
HejHåber overskriften fortæller lidt om min problemstilling.
Kort fortalt:
Så vil jeg have det ID der høre til det valgte element i min dropdownliste;
som bliver fyldt via en metode som henter data fra en mySQl.
Spørgsmål:
Første problem stilling: Hvorfor kan jeg ikke hente værdien/teksten,
af en asp controller fra en separat js fil på et ID?
Hvis jeg smider følgende i en function I min aspx fil:
var txtEksternNo = $('#<%=txtEksternNo.ClientID%>').val();
Så finder den, den korrekte værdi.
Hvis jeg har den i min egentlig function i min seperate js fil,
så siger den at variablen er null / undefined.
-- Kan få det til at køre hvis jeg gør det på class, men jeg VIL på ID.
Anden problemstilling:
Hvorfor er det at jeg ikke kan hente id fra min dropdownlist?
Det er så uanset om det ligger i den seperate js fil eller i aspx filen.
var txtLocation = document.getElementById("<%= locationDDL.ClientID %>")
var option = txtLocation.option[txtLocation.selectedIndex].id;
asp.net koden
Første problem stilling
<div>
ID="Label5" runat="server" Text="Ekstern No: " CssClass="LabelNewSample"></asp:Label>
name="txtEksternNo" runat="server" ID="txtEksternNo" class="testClass" placeholder=""></asp:TextBox>
</div>
Anden problemstilling
<div id="newInformation">
<div>
<h3>Informationer</h3>
<asp:Label ID="Label8" runat="server" Text="Location: " CssClass="LabelNewSample"></asp:Label>
<asp:DropDownList runat="server" ID="locationDDL"
CssClass="dropdownlist" AutoPostBack="false"> </asp:DropDownList>
</div>
</div> <%--END newInformation--%>
Så mit egentlig spørgsmål er følgende
Hvordan får jeg ID ud af min dropdownlist,
via function i et seperate document??
Er der ret overbevist om at jeg også smide ID ind i den når jeg populere den?
private void PopulatelocationDDL()
{
locationDDL.Items.Clear();
var choseLocation = new ListItem();
choseLocation.Text = "---Vælg Location---";
locationDDL.Items.Add(choseLocation);
foreach (BackBone.Model.Location l in CTR_Sample.GetAllLocations())
{
var item = new ListItem();
item.Text = l.LocationName;
item.Attributes.Add("ID", l.Location_ID + "");
locationDDL.Items.Add(item);
}
}
Stil endelig spørgsmål.
Har søgt på google og har simpelthen ikke kunne finde en løsning.
- Da jeg smed min første variabel over i aspx siden, så fandt den, det der stod skrevet i <asp:textbox>,
Men vil jo gerne have det i den seperate js fil.
- Kan slet ikke finde en fungerende løsning på,
hvordan jeg skal trække id ud af min dropdownliste