Avatar billede renekoemler Nybegynder
26. september 2006 - 11:32 Der er 7 kommentarer og
1 løsning

Værdi fra querystring indsættes i form felt

Hej,

Jeg nørkler lidt med at få værdien af en querystring ind som "startværdi" i en form felt.

"afsender":
<a href='opret.htm?id=" & indsatsnummer & "'>Opret registrering</a></td></tr>

"modtager":
<script type="text/javascript">
    var idIndsats = QueryString("id")
</script>

<input id="idIndsats" type="text" name="indsats" size="20" tabindex="1"></td>

vil helst undgå at lave formen om til .asp

Bedste hilsner
rené
Avatar billede roenving Novice
26. september 2006 - 12:41 #1
<script type="text/javascript">
window.onload = function(){
  var q = location.search;
  if(!q)return;
  q = q.substring(1).split("&");
  for(i=0;q.length>i;i++){
    q[i] = q[i].split("=");
    if(q[i][0] == "id"){
      document.getElementById("idIndsats").value = q[i][1];
      return;
    }
  }
}
</script>
Avatar billede renekoemler Nybegynder
26. september 2006 - 14:06 #2
Super det virker. Desværre gik der udover en anden automatisk indsættelse - nemlig et tidspunkt i et andet felt.

Kan man rykke "id" funktionen op i <head> lige som "tidspunkt" funktionen:

<html>

<head>
<meta http-equiv="Content-Language" content="da">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>BRSSJ VagtEkstranet</title>
<link rel="stylesheet" type="text/css" href="../layout/side.css">
<script type="text/javascript">
function setDate(element) {
    var now = new Date();
    var datestring = now.getDate() + '-' + now.getMonth() + '-' + now.getFullYear() + ' ' + now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds()
   
    element.value = datestring;
}
</script>

</head>

<body onload="setDate(document.getElementById('idTidspunkt'));">

<script type="text/javascript">
window.onload = function(){
  var q = location.search;
  if(!q)return;
  q = q.substring(1).split("&");
  for(i=0;q.length>i;i++){
    q[i] = q[i].split("=");
    if(q[i][0] == "id"){
      document.getElementById("idIndsats").value = q[i][1];
      return;
    }
  }
}
</script>

<div align="center">
    <table border="0" width="538" id="table1" cellspacing="0" cellpadding="10">
    <tr>
      <td colspan="2" background="../../grafik/krone_top.gif" height="96">
      <p align="left"><font  size="6" color="#FFFFFF">brssj.dk </font></td>
    </tr>

    <tr>
      <td colspan="2" bgcolor="#FF9900">
      <b>
      <font size="3" color="#FFFFFF">vagtekstranet/log/opret registrering</font></b></td>
    </tr>

   
      <form method="post" action="opret.asp">
     
      <tr>
      <td width="20%%" height="50">Indsats:</td>
      <td width="80%" height="50">
      <input id="idIndsats" type="text" name="indsats" size="20" tabindex="1"></td>
    </tr>
     
    <tr>
      <td width="20%%" height="50">Tidspunkt:</td>
      <td width="80%" height="50">
      <input id="idTidspunkt" type="text" name="tidspunkt" size="20" tabindex="1"></td>
    </tr>

    <tr>
      <td width="20%" height="50">Til:</td>
      <td width="80%" height="50">
        <input type="text" name="til" size="20" tabindex="2"></td>
    </tr>

    <tr>
      <td width="20%" height="50">Fra:</td>
      <td width="80%" height="50">
        <input type="text" name="fra" size="20" tabindex="3"></td>
    </tr>

    <tr>
      <td width="20%" height="50">Hændelse:</td>
      <td width="80%" height="50">
        <input type="text" name="haendelse" size="20" tabindex="4"></td>
    </tr>

    <tr>
      <td width="20%" height="50">Handling:</td>
      <td width="80%" height="50"><input name="handling" size="20" type="text" tabindex="5"></td>
    </tr>
   
    </td>
    </tr>

    <tr>
      <td colspan="2" bgcolor="#808080">
      <input type="submit" value="Opret" tabindex="6"></td>
    </tr>
    </form>
    </table>
   
    <p align="center">&nbsp;</div>

</body>

</html>
Avatar billede thesurfer Nybegynder
26. september 2006 - 14:10 #3
Du kan bare smide det ind i en almindelig funktion, og afvikle den når du har brug for den:

<script type="text/javascript">
function hent_id()
{
  var q = location.search;
  if(!q)return;
  q = q.substring(1).split("&");
  for(i=0;q.length>i;i++){
    q[i] = q[i].split("=");
    if(q[i][0] == "id"){
      document.getElementById("idIndsats").value = q[i][1];
      return;
    }
  }
}
</script>

Kald den med: hent_id();
Avatar billede roenving Novice
26. september 2006 - 14:16 #4
-- eller f.eks.

<script type="text/javascript">
function setDate(element) {
    var now = new Date();
    var datestring = now.getDate() + '-' + now.getMonth() + '-' + now.getFullYear() + ' ' + now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds()
   
    element.value = datestring;
}
window.onload = function(){
  var q = location.search;
  if(!q)return;
  q = q.substring(1).split("&");
  for(i=0;q.length>i;i++){
    q[i] = q[i].split("=");
    if(q[i][0] == "id"){
      document.getElementById("idIndsats").value = q[i][1];
      return;
    }
  }
  setDate(document.getElementById('idTidspunkt'));
}
</script>

</head>

<body>
Avatar billede roenving Novice
26. september 2006 - 14:17 #5
-- hov, den linje skal nok køres i starten:

window.onload = function(){
  setDate(document.getElementById('idTidspunkt'));
  var q = location.search;
  if(!q)return;

...
Avatar billede renekoemler Nybegynder
26. september 2006 - 14:32 #6
super ... det kører ... smid svar for point roenving
Avatar billede roenving Novice
26. september 2006 - 14:40 #7
Velbekomme '-)
Avatar billede roenving Novice
27. september 2006 - 13:00 #8
-- og tak for point ;~}
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