---
title: "Onchange"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/129650-onchange"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Asa"
published: "2005-06-08T08:46:50.000Z"
updated: "2005-06-20T18:52:29.000Z"
replies: 11
views: 413
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/javascript/129650-onchange"
---

# Onchange

## #1 — Asa, 2005-06-08T08:46Z

Vid val av produkt i selectrutan vill jag att dess pris samt artnr skall lägga sig i de fälten som är för artnr och pris. Här är min kod. Har ett javascript som man kanske kan använda som ligger med i koden men vet ej hur jag skall skriva sen.

```
<%For i = 1 To 5%>
  <script>
  function SendTo_<%=i%>(artnr,pris) {
	    document.faktura.artnr_<%=i%>.value = artnr;
	    document.faktura.pris_<%=i%>.value = pris;
  }
  </script>
  <tr>
    <td width="20%" valign="top" align="right"><input type="text" name="artnr_<%=i%>" style="width:100%"></td>
    <td width="50%" valign="top">
      <select name="produkt_<%=i%>" style="width:100%">
        <option value="">» Välj produkt «
        <%Set RS=Conn.Execute("Select produkt,artnr,pris From shop_asp_produkter Order By produkt")
          Do Until RS.EOF%>
            <option value="<%=RS("produkt")%>"><%=RS("produkt")%><br>
          <%RS.MoveNext
          Loop
        RS.Close:Set RS=Nothing%>
      </select>
    </td>
    <td width="15%" valign="top" align="right"><input type="text" name="antal_<%=i%>" style="width:100%"></td>
    <td width="15%" valign="top" align="right"><input type="text" name="pris_<%=i%>" style="width:100%"></td>
  </tr>
<%Next%>
```

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

## #2 — J.N., 2005-06-08T09:46Z

HEJ!

Om du kompletterar din listruta med ett OnChange-anrop till funktionen, borde väl document.faktura.artnr\_\<%=i%\>.value sätta värdet i rätt ruta?

VB-Script är fint, men resulterande JavaScript vore finare här!

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

## #3 — Asa, 2005-06-08T09:49Z

Priset och artnr skall hämtas från databasen. Inne i loopen. Går det? Och isåfall hur skriver man? 

 onChange="javascript:SendTo\_\<%=i%\>('\<%=RS("artnr")%\>,'\<%=RS("pris")%\>');"

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

## #4 — Jesper T, 2005-06-08T10:05Z

Måste säga att det är Aber att mixa client-side asp-kod och javascript-kod.

Klistra in javascriptkoden som sidan genererar i stället för en oförståelig gröt med spagettikod.

Javascriptprobs i detta forum, asp i aspforumet.

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

## #5 — Asa, 2005-06-08T10:27Z

Jag undrar bara om man på nåt sått kan lägga 

onChange="javascript:SendTo\_\<%=i%\>('\<%=RS("artnr")%\>,'\<%=RS("pris")%\>');"

i en option-tagg - för där måste den ligga...på nåt sätt.

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

## #6 — @nders, 2005-06-08T10:29Z

Nej, du kan inte lägga onchange på ett \<option\>-element. Lägg alla värden du behöver i value på din option, och dela på dem i funktionen.

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

## #7 — Asa, 2005-06-08T11:00Z

Hmm, hur då? Javascript är inte min starka sida. Hur skriver jag i det om jag lägger alla fält ifrån databasen som value i option ? OM jag ex separerar med  ;

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

## #8 — Asa, 2005-06-20T11:28Z

Fick man nån hjälp eller?

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

## #9 — @nders, 2005-06-20T11:31Z

Om du har en sträng som ser ut så här: *värde1;värde2;värde3*, så kan du splitta den så här:

```
arrValues = strängvariabeln.split(";");
sValue1 = arrValues[0];
sValue2 = arrValues[1];
sValue3 = arrValues[2];
```

Då har du ju separata variabler för alla värden.

mvh

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

## #10 — Asa, 2005-06-20T14:02Z

Men hur skall jag skriva i min kod? Ovan? Med denna onchange i select-taggen:
onChange="javascript:SendTo\_\<%=i%\>(xxxx);"

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

## #11 — zcorpan, 2005-06-20T16:10Z

("javascript:" borde inte vara med i *event*\-attribut.)

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

## #12 — @nders, 2005-06-20T18:52Z

> **Asa skrev:**
>
> Men hur skall jag skriva i min kod? Ovan? Med denna onchange i select-taggen:
> onChange="javascript:SendTo\_\<%=i%\>(xxxx);"

Det är fel sätt att använda funktioner på om du har en funktion per 'post' (i). Skicka hela klabbet som en parameter.

```
function SendTo(params) {

//

}
```

```
<select onchange="SendTo(this.options[this.selectedIndex].value);">
<option value=""></option>
<option value="värde1;värde2;värde3">Post 1</select>
</select>
```

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/129650-onchange
