MannenMedlem sedan jan. 2003247 inlägg Hejsan
Använder javascript och asp tillsammans i en meny.
Problemet är jag har en <select> som styrs av en annan och om man inte ändrar i den andra och sidan laddas om ska de värden som ska vara i den andra fortfarande vara där. Felet är att när sidan laddas om skickas värdet som den andra menyn ska ha in men det ändrar sig inte efter det värdet.
Det som jag har problem med är att denna funktion [ onChange="LoadCat2(this.form)"] ska laddas (vart ska jag placera det?) (this.form) kommer ju i detta fall vara typ <%=Request.Form(Cat1)%>
onChange="LoadCat2(this.form)"
ligger i <select> tagen i den första menyn. Men eftersom id:t skickas med när sidan laddas om borde jag kunna skicka värderna till den andra menyn via onLoad i bodytagen eller dylikt.
Det är säkert jättelätt att lösa men jag lyckas inte.
Om ni inte förstår vad jag menar så säg det.
Tack på förhand
Peter SMedlem sedan dec. 20025 483 inlägg Är ej säker på att jag förstått dig rätt, men testa följande:
<body onload="LoadCat2( document.forms['[b]namn[/b]'] )">
Där namn är namnet på formuläret som <select>-elementen ligger i.
:)
MannenMedlem sedan jan. 2003247 inlägg Jag tror du missuppfattar mig.
Jag har en
<select name="adCat" onChange="LoadCat2(this.form)">
När jag väljer något i denna meny påverkar det <select name="adUCat">
Men om man trycker på skicka sen utan att ha valt något i "meny2" så kommer man tillbaka och då är värdet i "meny1" valt men de menyer soms ka visas i "meny2" visas inte. Då borde jag kunna anropa dem med värdet som skickas från den första menyn i body tagen, typ som du visade.
Kanske något sånt här:
<%
intCatID=Request.Form("adCat")
%>
body onload="LoadCat2(<%=intCatID%>)">
Borde inte något sånt fungera?
Peter SMedlem sedan dec. 20025 483 inlägg Nej, det kommer inte att fungera. Testa mitt förslag istället ;)
:)
MannenMedlem sedan jan. 2003247 inlägg Får det inte att fungera :(
<body onload="LoadCat2( document.forms['adCat'] )">
Det ska stå document.forms ?
Peter SMedlem sedan dec. 20025 483 inlägg Namnet du skall använda är det värde som finns i <form>-elementets nameattribut.
:)
MannenMedlem sedan jan. 2003247 inlägg Aj fan.. ;) Att jag inte tänkte så långt, tack ska du ha. Nu kom det automatiskt en fråga till, hoppas du kan hjälpa till med den med.
Nu fungerar det, men säg att man valt allt från början men formuläret är ändå inte ifyllt fullt ut. Jag jag vill bevara det värdet som var i "meny" tex value="52" hur får jag då den selected ?
Förstår du/ni?
MannenMedlem sedan jan. 2003247 inlägg Om detta är till hjälp.
case "9":
U_cat.adUCat.options.length = 6;
U_cat.adUCat.options[0] = new Option("Välj Underkategori", "-1")
U_cat.adUCat.options[1] = new Option("Underkat1", "97")
U_cat.adUCat.options[2] = new Option("Underkat2", "98")
U_cat.adUCat.options[3] = new Option("Underkat3", "99")
U_cat.adUCat.options[4] = new Option("Underkat4", "100")
U_cat.adUCat.options[5] = new Option("Underkat5", "101")
break;
Peter SMedlem sedan dec. 20025 483 inlägg Nu hänger jag inte riktigt med. Har du mer information?
:)
MannenMedlem sedan jan. 2003247 inlägg I slowmotion ;)
Besökaren väljer från "meny1" och "meny2" men fyller inte i resten av formuläret, därav laddas sidan om och man kommer man till formuläret igen men nu är "meny1" ifyllt, NU vill jag även att "meny2" ska vara ifyllt med den kategori som man valde från början.
Alltså ska se alla kategorierna som vanlig med ha den man valt selected.
Fattar du? Behöver du mer info, vad i så fall?
Peter SMedlem sedan dec. 20025 483 inlägg Är det inte det som mitt exempel åstadkommer? När sidan laddas om väljs "rätt" val i det andra <select>-elementet med:
<body onload="LoadCat2( document.forms['U_cat'] )">
?
:)
MannenMedlem sedan jan. 2003247 inlägg Det man åstakommer med det är att rätt "delmeny" väljs i "meny2". Det värde som har valts i den rätta "delmenyn" då sidan laddas om visas dock inte, värderna radas bara upp som om du hade klickat på ett värde i "meny1".
Nu ser det ut så här:
form tagen heter frmAd
Meny1 heter adCat
Meny2 heter adUCat
<body onLoad="MM_preloadImages('<%=strBrowse%>eb_pics/eb_menu/eb_buttons/alternativ_on.gif'); LoadUkat( document.forms['frmAd'] )">
Borde jag inte kunna styra meny två med ett specifikt värde i den?
Med något sånt du beskriv nyss, <select name="adUCat"> heter meny2.
LoadUkat( document.forms['adUCat']
Peter SMedlem sedan dec. 20025 483 inlägg Ok, jag tror jag hänger med nu. Titta på följande exempel och se om det är vad du söker:
http://member.webforum.nu/Peter S/select.html
Lägg märke till denna del som bestämmer vilket val som skall vara selected i den andra menyn:
switch (form.elements["s1"].selectedIndex) {
case 1:
form.elements["s2"].options[1].selected = true;
break;
}
:)