Avatar billede supermand69 Nybegynder
07. september 2006 - 12:36 Der er 12 kommentarer og
1 løsning

value+text i select

jeg har en select og et input

<select name="sel">
<option value="1">string</option>
</select>

<input name="inp">

når jeg så trykker på min knap skal teksten "string" indsættes i mit input

onclick="this.form.inp.value = this.form.sel.option"

her bliver den undefined
Avatar billede fennec Nybegynder
07. september 2006 - 12:43 #1
<form name="myForm" method="post" action="<%= scriptname %>">
<select name="sel">
<option value="1">string</option>
</select>
<input name="inp"><br>
<br>
<input type="Button" value="klik" onClick="setIt(this.form);return false;">

</form>

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
function setIt(obj)
{
    obj.inp.value = obj.sel[obj.sel.selectedIndex].text
}
//-->
</SCRIPT>
Avatar billede thesurfer Nybegynder
07. september 2006 - 12:48 #2
Hvis det er den eneste handling, kan man vel ligeså godt smide JS-koden i onclick..

Kønt bliver der ikke, men man sparer nogle linier.. og så skulle siden gerne loade (meget meget meget) lidt hurtigere.. :-)
Avatar billede thesurfer Nybegynder
07. september 2006 - 12:51 #3
Eksempel: onClick="f=this.form;f.inp.value=f.sel.text;return false;"
Avatar billede thesurfer Nybegynder
07. september 2006 - 12:53 #4
Man kan også bruge selectedIndex, hvis man vil (lidt længere kode):

onClick="f=this.form;f.inp.value=f.sel[f.sel.selectedIndex].text;return false;"


fennec> Der står ikke noget om, at der er ASP involveret, men ok.. :-)
Avatar billede fennec Nybegynder
07. september 2006 - 13:03 #5
thesurfer >>
Hvis du tænker på <%= scriptname %>, så er det fordi jeg har indbygget genvejstaster til at skrive kode. Hvis jeg skriver "for" og trykker på Ctrl+j skriver den automatisk hele mit form tag. Og der er scriptname en del af, da det er en standard variabel jeg har på alle sider.

Den fik jeg så ikke lige slettet fra eksemplet :o)
Avatar billede supermand69 Nybegynder
08. september 2006 - 01:03 #6
her får jeg stadig fejl:

this.form.track.value = this.form.track_ins.text;

- men hvis jeg ændrer text til value virker det

this.form.track.value = this.form.track_ins.value;
Avatar billede thesurfer Nybegynder
08. september 2006 - 03:02 #7
Vi kan ikke se din form, så smid den lige her ind..
Avatar billede supermand69 Nybegynder
08. september 2006 - 07:47 #8
<form method="post" action="<?=$_SERVER["PHP_SELF"].'?tab='.$_GET['tab']?>" onsubmit="this.onsubmit = function(){return false;}">

<select style="width:400px" size="10" name="track_ins">
<option value="43">tekst</option>
</select>

<input style="width:300px" type="text" name="track_<?=$points?>">
          <input class="button" type="button" value="Indsæt" onclick="this.form.track_<?=$points?>_id.value = this.form.track_ins.value; this.form.track_<?=$points?>.value = this.form.track_ins.value">

</form>
Avatar billede supermand69 Nybegynder
08. september 2006 - 07:49 #9
hov..

jeg postede lidt forkert, men i den ovenfor indsætter den fint value i hvert text input.. det er sådan her den skulle se ud, men der bliver text sat til 'undefinded'

<input style="width:300px" type="text" name="track_<?=$points?>">
          <input class="button" type="button" value="Indsæt" onclick="this.form.track_<?=$points?>_id.value = this.form.track_ins.value; this.form.track_<?=$points?>.value = this.form.track_ins.text">
Avatar billede fennec Nybegynder
08. september 2006 - 09:19 #10
Smid selectedIndex på:

this.form.track_<?=$points?>.value = this.form.track_ins[this.form.track_ins.selectedIndex].text
Avatar billede supermand69 Nybegynder
25. januar 2007 - 13:56 #11
lukker
Avatar billede thesurfer Nybegynder
25. januar 2007 - 19:53 #12
supermand69> Hvorfor?
Avatar billede supermand69 Nybegynder
25. januar 2007 - 19:58 #13
jeg droppede det helt.. :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester