Avatar billede sbarnney Nybegynder
25. oktober 2002 - 14:58 Der er 4 kommentarer og
1 løsning

onchange hent data fra db.

Hvad er der galt med dette script ?
Jeg vil hentet data ved en onchange.

<script>
var prisArr = new Array();
var startdatoArr = new Array();
var slutdatoArr = new Array();
var kundeforArr = new Array();
var kundeefterArr = new Array();
var kundevejArr = new Array();
var kundehusnrArr = new Array();
var counter  = 1;
var pcounter  = 1;
</script>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Set RS = Server.CreateObject("ADODB.Connection")
Conn.Open "LOKALNESADSN", "nesa", "nesa"
%>
<html>
<head>
    <title></title>
</head>
<body onload="document.myForm.produkt.focus();">
<form method="post" name="myForm" action="test.asp">
<table border="1">
<tr>
<%
  sql = "SELECT * FROM qProdukt"
  set rs= conn.execute(sql)
%>
  <td>
  <input type="text" name="produkt" onChange="document.myForm.pris.value=prisArr[this.selectedIndex];document.myForm.startdato.value=startdatoArr[this.selectedIndex];document.myForm.slutdato.value=slutdatoArr[this.selectedIndex];">
<%
  while not(rs.eof) %>
<script>
prisArr[pcounter] = '<%= (rs("Kanalsalgspris")+rs("tillaeg")) %>';
startdatoArr[pcounter] = '<%= formatdatetime(rs("startdato"),2) %>';
slutdatoArr[pcounter] = '<%= formatdatetime(rs("slutdato"),2) %>';
pcounter++
</script>
<%
  rs.movenext
wend       
%>
  </td>
</tr>
<tr><td><input type="text" name="pris" size="15" readonly></td></tr>
<tr><td><input type="text" name="startdato" size="15" readonly></td></tr>
<tr><td><input type="text" name="slutdato" size="15" readonly></td></tr>
</table>
<script language="JavaScript">
function getNthParm(string,parm,nth) {
  if (!string) return '';
  var count = 1;
  var startPos = 0 + string.indexOf(parm + '=');
  while (startPos > -1) {
    startPos = startPos + parm.length + 1;
    var endPos = 0 + string.indexOf('&',startPos);
    if (endPos == -1)
      endPos = string.length;
    if (count == nth)
      return unescape(string.substring(startPos,endPos));
    startPos = 0 + string.indexOf(parm + '=',endPos);
    count++;
  }
  return '';
}

var passed = location.search;
passed = passed.substring(1);
if (passed.length > 0)
  reloadForm(document.myForm, passed.replace(/\+/g,' '));
  document.myForm.kontraktnr.focus();
</script>
</body>
</html>


MVH Stig
Avatar billede neteffect Nybegynder
25. oktober 2002 - 15:34 #1
this.selectedIndex kan kun benyttes til <option>

Det er måske også det der er meningen, altså at queryen også skal fylde på en <select>..</select>?

Husk at close recordset og connection
Avatar billede sbarnney Nybegynder
25. oktober 2002 - 15:36 #2
Nej det skal være et textfelt.
Avatar billede neteffect Nybegynder
25. oktober 2002 - 16:03 #3
Så må du lave en client-side javascript-funktion til at matche brugerens input op mod de kendte produkter, med tilhørende fejlhåndtering for når brugeren skriver et produkt, som ikke findes. Funktionen skal returnere index til at slå op i pris, startdato og slutdato.
Avatar billede sbarnney Nybegynder
28. oktober 2002 - 08:00 #4
Okay, men hvordan ??
Avatar billede sbarnney Nybegynder
04. november 2002 - 15:47 #5
Stig
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
Kurser inden for grundlæggende programmering

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