Avatar billede cleecer Nybegynder
25. juli 2006 - 00:44 Der er 17 kommentarer og
1 løsning

Avanceret form

Hvis man forestiller sig en option felt med forskellig vin, hvor man efter at have valgt en vin,skal skrive antallet af flasker et input felt.

Når dette er gjordt skal man kunne trykke på en knap, der overføre resultatet til et textfelt. resultatet forestiller jeg mig skal skrives på følgende måde: "10 x medoc á 100 kr".

(option pick) (antal) [btn]-----> (antal + option picks)

Den enkelte overførsel skal kunne slettes igen.
Altså en slags picklist med antal på.
Avatar billede roenving Novice
25. juli 2006 - 00:53 #1
Det er ikke enormt svært, men der mangler vist lige nogle oplysninger eller overvejelser ...

Hvis nu man ønsker at bestille flere forskellige, hvordan skal de så registreres, og hvordan skal det være muligt at slette enkelte af dem ?-)
Avatar billede cleecer Nybegynder
25. juli 2006 - 01:02 #2
Der skal ikke reloades på siden, så bruger jeg bare data fra tektfeltet og submitter... Så det er meningen at man skal kunne lave flere overførsler til tekstfeltet(vin + antal)... Hvis det er for svært at slette den enkelte overførsel, skal man måske bare kunne rense tekstfeltet igen..
Avatar billede thesurfer Nybegynder
25. juli 2006 - 01:03 #3
Et billede siger mere end 1000 ord..
Avatar billede cleecer Nybegynder
25. juli 2006 - 01:14 #4
Avatar billede thesurfer Nybegynder
25. juli 2006 - 01:18 #5
Lækkert :-)

Når man markerer et produkt i "Bestilling" og klikker på "<< Fjern fra bestilling", hvad skal der så ske?

1) Skal produktet bare fjernes fra listen over bestilte produkter?
2) Skal produktets detaljer flyttes/markeres i de tilhørende bokse, så man nemt kan rette værdierne (f.eks. antal)?
Avatar billede cleecer Nybegynder
25. juli 2006 - 01:21 #6
1 er fint nok - 2 kunne være storartet :0)
Avatar billede thesurfer Nybegynder
25. juli 2006 - 01:24 #7
Sådan! :-)

Så er der noget arbejde til roenving.. hehehe.. :-)
Avatar billede roenving Novice
25. juli 2006 - 01:27 #8
*lol*

-- tjah, jeg tror zq jeg vil kigge på den (trænger jo nok til lidt træning efter et par måneder, hvor nyt arbejde har krævet fokus !-)
Avatar billede cleecer Nybegynder
25. juli 2006 - 01:29 #9
Hvis det er til nogen hjælp kan man måske implementere antal fra følgende script: http://www.javascriptkit.com/script/script2/picklist.shtml ... det giver nok nogle problemer i forholdet til den der init funktion ?
Avatar billede roenving Novice
25. juli 2006 - 02:36 #10
Sådan ?-)

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>

<title>Tomt dokument</title>

<meta name="keywords" content="roenving,http://www.eksperten.dk/spm/722198">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
html,body{height:100%;margin:0px;border:0px;padding:0px;font-family:tahoma,verdana,arial,sans-serif;font-size:small;}
</style>
<script language="javascript" type="text/javascript">
function tilfoejKoeb(elm){
  var f = elm.form;
  var fra = f.vinSelect;
  fraSel = fra.selectedIndex;
  if(fraSel == -1) return;
  var til = f.koebSelect;
  var opts = til.options;
  var num = +f.antal.value;
  if(0 >= num)return;
  var fraVal = fra.options[fraSel].value.split("|");
  var val = num + "|" + fraVal[0] + "|" + fraVal[1];
  var txt = num + " * " + fraVal[0] + " à kr. " + fraVal[1] + " = kr. " + (num * +fraVal[1]);
  opts[opts.length] = new Option(txt,val);
  opdaterIalt(til,f);
}
function fjernFraBestilling(elm){
  var f = elm.form;
  var fra = f.vinSelect;
  var til = f.koebSelect;
  var tilSel = til.selectedIndex;
  if(tilSel == -1) return;
  var val = til.options[tilSel].value.split("|");
  f.antal.value = val[0];
  var selVal = val[1] + "|" + val[2];
  for(i=0; fra.length > i; i++){
    if(fra.options[i].value == selVal){
      fra.options[i].selected = true;
      break;
    }
  }
  til.options[tilSel] = null;
  opdaterIalt(til,f);
}
function opdaterIalt(til,f){
  var flt = document.getElementById("ialt"), sum = 0, val;
  for(i=0;til.length>i;i++){
    val = til.options[i].value.split("|");
    sum += +val[0] * +val[2];
  }
  flt.firstChild.nodeValue = sum;
}
</script>
</head>

<body>
<br>
<form id="minForm" name="minForm">
<table>
<tr>
<td>
<select name="vinSelect" size="10" id="minSelect">
    <option value="vin1|100">vin 1 à 100 kr.<br>
    <option value="vin2|75">vin 2 à 75 kr.<br>
    <option value="vin3|500">vin 3 à 500 kr.<br>
    <option value="vin4|150">vin 4 à 150 kr.<br>
    <option value="vin5|45">vin 5 à 45 kr.<br>
    <option value="vin6|70">vin 6 à 70 kr.<br>
    <option value="vin7|66">vin 7 à 66 kr.<br>
    <option value="vin8|100">vin 8 à 100 kr.<br>
    <option value="vin9|100">vin 9 à 100 kr.<br>
    <option value="vin10|100">vin 10 à 100 kr.<br>
    <option value="vin11|100">vin 11 à 100 kr.<br>
    <option value="vin12|100">vin 12 à 100 kr.<br>
</select></td>
<td style="text-align:center">
<button onclick="tilfoejKoeb(this);">Føj til bestilling &raquo; &raquo;</button><br><br>
<button onclick="fjernFraBestilling(this);">&laquo; &laquo; Fjern fra bestilling</button><br><br>
Antal: <input type="text" name="antal" size="5" value="0" style="text-align:right;" onclick="this.value='';">
</td>
<td>
<select size="10" name="koebSelect" style="width:200px;">
</select>
</td>
</tr>
<tr>
<td colspan="3" style="text-align:center;font-size:large;">
Pris ialt: Kr.: <span id="ialt">0</span>,-</td>
</tr>
</table>
</form>
</body>

</html>
Avatar billede cleecer Nybegynder
25. juli 2006 - 08:29 #11
Det er simpelthen intet mindre end fantastisk ! og så bare på en ca. en time... jeg er imponeret - send et svar :o)
Avatar billede roenving Novice
25. juli 2006 - 11:12 #12
Velbekomme '-)
Avatar billede roenving Novice
25. juli 2006 - 11:52 #13
-- og tak for point ;~}
Avatar billede thesurfer Nybegynder
25. juli 2006 - 14:59 #14
roenving> I Opera v9 og Mozilla FireFox v1.5.0.4 submittes formen, når man klikker på "Føj til bestilling >>"..
Avatar billede cleecer Nybegynder
25. juli 2006 - 19:53 #15
ja det er ikke så optimalt... nogen forslag ?
Avatar billede cleecer Nybegynder
25. juli 2006 - 20:00 #16
fandt ud af man kan skrive knappen sådan:
<input type="button" onClick="fjernFraBestilling(this,'vin');" value="&laquo; &laquo; Fjern fra bestilling"></input>

Så submitter den ikke :0)
Avatar billede roenving Novice
25. juli 2006 - 23:41 #17
Argh, den havde jeg simpelthen glemt ...

Opera og FireFox virker form-buttons altid som submit-knapper, så der skal sættes return false på, så den naturlige handling undlades:

<input type="button" onClick="fjernFraBestilling(this,'vin');return false;" value="&laquo; &laquo; Fjern fra bestilling">
Avatar billede cleecer Nybegynder
26. juli 2006 - 00:36 #18
ok - super
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