webForumDet fria alternativet

Alertruta i selectbox

JavaScript

6 svar · 402 visningar · startad av pb81

Medlem sedan okt. 200688 inlägg
Frågan#1

Hejsan!
Hur går jag tillväga om jag skall få upp en alert (ok/Avbryt) i en selectbox.
Selectboxen innehåller 2 val och när man väljer någon av dessa så kommer man automatiskt till en annan länk. Det jag vill är att man skall få upp en ruta om man säkert vill gå till denna länk om man klickar på länk2

<select onChange="url=this.options[this.selectedIndex].value; if(url){ location.href=url; }" name="s1">
<option value="#">LISTAN</option>
<option value="länk1">LÄS</option>
<option value="länk2">TA BORT</option>
</select>
Medlem sedan juni 200032 967 inlägg
#2

Någonting sånt härnt kanske skulle kunna funka:

<select onChange="if(confirm ('är du säker, din gamle bäver?')) {url=this.options[this.selectedIndex].value; if(url){ location.href=url; }}" name="s1">
<option value="#">LISTAN</option>
<option value="länk1">LÄS</option>
<option value="länk2">TA BORT</option>
</select>
Medlem sedan okt. 200688 inlägg
#3

Nja men då får man väl upp bekräftelsen på båda länkarna va?
Den skall bara komma när man väljer länk2. Och de länkarna som finns där är dynamiska.

Medlem sedan juni 200032 967 inlägg
#4

edit: äh - krånglade sönder.

återkommer.

---

återkomsten:

Prova följande:

<form>
<select onChange="foo=true; if (this.selectedIndex == 2) { foo = confirm ('är du säker, din gamle bäver?')} { if (foo) {url=this.options[this.selectedIndex].value; if(url){ location.href=url; }}}" name="s1">
<option value="#">LISTAN</option>
<option value="http://www.aftonbladet.se/">LÄS</option>
<option value="http://www.expressen.se/">TA BORT</option>
</select>
</form>
Medlem sedan juni 20008 205 inlägg
#5
<select onChange="var opt = this.options[this.selectedIndex]; if(!opt.className || opt.className.split(/\s+/)).indexOf('needsConfirm') == -1 || confirm ('är du säker, din gamle bäver?')) {url=opt.value; if(url){ location.href=url; }}" name="s1">
  <option value="#">LISTAN</option>
  <option value="länk1">LÄS</option>
  <option class="needsConfirm" value="länk2">TA BORT</option>
</select>

red. Finns säkert nåt tjusigare sätt att hämta klasserna på
red 2. Typiskt, pwned av @nders

Medlem sedan juni 200032 967 inlägg
#6

spango skrev:

red 2. Typiskt, pwned av @nders

Well - pwned skulle jag väl inte säga. Din lösning är ju bättre. :)

Medlem sedan okt. 200688 inlägg
#7

Joda nu funkar det som jag vill..
Tackar för hjälpen.

259 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)