Avatar billede artico Novice
10. juli 2005 - 22:20 Der er 35 kommentarer og
1 løsning

flere var i onChange

Jeg har dette i onchange:

  echo"<select name=\"slagtervare_1\" onchange=\"this.form.opskriftlink.value=this.value\">";

Kan jeg hente flere variabler i samme onchange ? Jeg skal bruge 4?
Avatar billede thesurfer Nybegynder
10. juli 2005 - 22:28 #1
Hente flere variabler? Du mener <option value="flere værdier her"> ?

Du kan bruge en delimiter og adskillige dine data.. og derefter lave værdien om til en array :-)

Eksempel:

<option value="bil,hus,hund">

og derefter kan du bruger noget java script:

s = "bil,hus,hund"; //værdien hentes på en anden måde, men det er bare metoden..

s = s.split(",")
alert(s[0]); // bil
alert(s[1]); // hus
alert(s[2]); // hund

/theSurfer
Avatar billede thesurfer Nybegynder
10. juli 2005 - 22:31 #2
Avatar billede artico Novice
10. juli 2005 - 22:34 #3
Ok... min kode ser således ud, men jeg kan kun bruge variablen opskriftlink, og vil gerne bruge variablerne: varenavn,opskriftlink,gram_pr_person,lev_1_ppk

Hvordan gør jeg lige det?

<? $id = $_GET['id'];

echo'<form name="hent">';
$q = mysql_query("SELECT * FROM slagtervare");
    echo"<select name=\"slagtervare_1\" onchange=\"this.form.opskriftlink.value=this.value\">";
  while($row = mysql_fetch_array($q)) {
          $selected = ($row["varenavn"] == $id)? "SELECTED":"";
      echo"<option value=\"".$row['opskriftlink']."\"". $selected." >".$row['varenavn']."</option>";
  }
    echo"</select>";
?>
Avatar billede thesurfer Nybegynder
10. juli 2005 - 22:48 #4
Jeg forstår ikke hvad du mener, men du kan gøre sådan her, hvis du vil:


echo"<select name=\"slagtervare_1\" onchange=\"this.form.opskriftlink.value=this.value;noget andet her; og noget tredje her;\">";

Jeg har tilføjet noget i onchange="...".. du skal bare adskille dem med semi-kolon ";"..

/theSurfer
Avatar billede artico Novice
10. juli 2005 - 23:30 #5
Det ser fint ud, men det er stadig kun variablen "opskriftlink" der bliver vist i den tilhørende indput... :-(
Avatar billede thesurfer Nybegynder
11. juli 2005 - 00:17 #6
Måske er bare sent, men jeg forstår stadigvæk ikke hvad du mener.. :-)

- Hvordan ser din form ud, efter at siden er loadet?
- Kan du ikke prøve at smide den online, så vi kan se den "in action"..?

/theSurfer
Avatar billede artico Novice
11. juli 2005 - 00:31 #7
Koden ser således ud:(klippet af nederst)
<? $id = $_GET['id'];

echo'<form name="hent">';
$q = mysql_query("SELECT * FROM slagtervare");
    echo"<select name=\"slagtervare_1\" onchange=\"this.form.opskriftlink.value=this.value;this.form.gram_pr_person.value=this.value;this.form.lev_1_ppk.value=this.value\">";

  while($row = mysql_fetch_array($q)) {
          $selected = ($row["varenavn"] == $id)? "SELECTED":"";
      echo"<option value=\"".$row['opskriftlink']."\"". $selected." >".$row['varenavn']."</option>";
  }
    echo"</select>";
?><input type="hidden" name="slagtervare_1" value="<? echo $selected ?>"></td>
                    <td><input type="text" name="opskriftlink" value="<? echo $row['opskriftlink'] ?>" onblur="Load_id()" size="30"></td>
       

                    <td><input type="text" name="gram_pr_person" value="<? echo $row['gram_pr_person'] ?>" onblur="pris_ialt_1(this.form);" name="gram_pr_person" size="10"></td>
                    <td><input type="text" value onblur="pris_ialt_1(this.form);" name="kilopris_1" size="10"></td>
                    <td><input type="text" class="noinput" name="facit1_udsalgspris" value onblur="pris_ialt_1(this.form);" size="10" border="0">
                                                                                        <td><input type="text" name="kostpris_1" size="10"></td>
                    <td><input type="text" class="noinput" name="facit1_kostpris" size="10"></td>
                    <td><input type="text" class="noinput" name="avance_kr_pr_vare1" value onblur="pris_ialt_1(this.form);" size="10" border="0"></td>
                </tr>

MEN: Det virker fint med at hive data ud af DBén og vise det i selecten men jeg får kun vist variablen "opskriftlink" i indputfeltet som du kan se...
Avatar billede thesurfer Nybegynder
11. juli 2005 - 00:43 #8
Det er fordi, du ikke sætter nogen værdi, til dine "value"-paramere:

value onblur...

Der skal f.eks. stå:

<input type="text" class="noinput" name="facit1_udsalgspris" value="<? echo $rom['facit1_udsalgspris'] ?>" onblur="pris_ialt_1(this.form);" size="10" border="0">

Dvs, du mangler at indsætte value="<? echo $row['noget her'] ?>"..

/theSurfer
Avatar billede thesurfer Nybegynder
11. juli 2005 - 00:45 #9
Det er ikke en god ide, at kalde både en SELECT og en INPUT for "slagtervare_1":

    echo"<select name=\"slagtervare_1\"...
og
                    <td><input type="text" name="opskriftlink"...

Giv dem unikke navne..

/theSurfer
Avatar billede artico Novice
11. juli 2005 - 00:54 #10
ok de er omdøbt..
Avatar billede artico Novice
11. juli 2005 - 00:57 #11
Jeg kan stadig kun se den samme variabel : opskriftlink, det er underligt for den bliver også vist i: <input type="text" name="gram_pr_person" value="<? echo $row['gram_pr_person'] ?>"
Avatar billede thesurfer Nybegynder
11. juli 2005 - 00:58 #12
Upload siden, så jeg kan se den online.. så kan jeg se hvordan det ser ud, og se kildekoden..

/theSurfer
Avatar billede artico Novice
11. juli 2005 - 01:06 #13
har du en email?
Avatar billede thesurfer Nybegynder
11. juli 2005 - 01:09 #14
Jeg har desværre ikke mulighed, for at afvikle PHP, da jeg ikke har Apache installeret.. og har heller ikke PHP-extension til IIS..

Hvis du ikke har en konto online, kan du oprette en gratis konto her: http://www.whitehat.dk

/theSurfer
Avatar billede artico Novice
11. juli 2005 - 01:12 #15
Det ligger på en server online, og jeg vil sende dig et link via e-mail.....
Avatar billede thesurfer Nybegynder
11. juli 2005 - 01:19 #16
OK.. opret en gratis bruger på http://www.ebruger.dk/e/ og send linket via det interne Epost på siden.. mit brugernavn er "thesurfer".

Skriv aldrig email adresser på offentlige fora.. de kan høstes af spambots..

http://www.turnstep.com/Spambot/info.html#whatspambot

/theSurfer
Avatar billede thesurfer Nybegynder
11. juli 2005 - 01:20 #17
Opret en bruger via denne side: http://www.ebruger.dk/bruger/nytmedlem.asp

/theSurfer
Avatar billede thesurfer Nybegynder
11. juli 2005 - 01:22 #18
Enhver der ønsker at hjælpe, skal kunne få adgang til linket..

/theSurfer
Avatar billede thesurfer Nybegynder
11. juli 2005 - 01:46 #19
I stedet for at bruge: window.open(this.options[this.selectedIndex].value,'_self')
skal du bare bruge: window.location.href=this.selectedIndex.value

(mener jeg)

/theSurfer
Avatar billede thesurfer Nybegynder
11. juli 2005 - 01:52 #20
Du har stadig "value" stående alene, uden at tildele den en værdi.. ret det lige :-)

/theSurfer
Avatar billede thesurfer Nybegynder
11. juli 2005 - 02:02 #21
Jeg fortsætter omkring middag.. smutter i seng nu..

/theSurfer
Avatar billede thesurfer Nybegynder
11. juli 2005 - 10:40 #22
Feltnavnet "lev_1_ppk" eksisterer ikke:

onchange="...;this.form.lev_1_ppk.value=this.value"

Men hvorfor bruger du "this.value" til alle felterne, i onchange?
this.value, tager bare en værdi, man vælger i SELECT..

/theSurfer
Avatar billede artico Novice
11. juli 2005 - 14:02 #23
Min plan var/er at:
først henter jeg alle data fra DBén: $q = mysql_query("SELECT * FROM slagtervare");

og sætter varenavn i Selecten:  echo"<option value=\"".$row['opskriftlink']."\"". $selected." >".$row['varenavn']."</option>";

Når man så vælger et varenavn i Selecten, så henter den disse vares variabler med ud i nye indputfelter, disse variabler er pr. varenavn: opskriftlink,gram_pr_person,lev_1_ppk

Det virker også fint! dog kun med variablen : opskriftlink

Men det kan jeg så ikke få til at virke :-(
Avatar billede thesurfer Nybegynder
12. juli 2005 - 02:36 #24
Feltet "lev_1_ppk" eksisterer stadigvæk ikke.....

Jeg har lige åbent siden/kildekoden i en editor, og søgt på "lev_1_ppk". Den finder "lev_1_ppk" kun 1 gang, og det er i:

onchange="...;this.form.lev_1_ppk.value=this.value"

Feltet "lev_1_ppk" eksisterer ikke..

/theSurfer
Avatar billede thesurfer Nybegynder
12. juli 2005 - 02:39 #25
..og hvad er meningen, med de "value" der bare står i dine INPUT-elementer, uden nogen som helst værdi?

Der står bare <input ... value ...>

Der burde have stået <input ... value="noget her" ...>

/theSurfer
Avatar billede thesurfer Nybegynder
12. juli 2005 - 03:04 #26
Jeg kan se, at du har en del grupper af felter, hvor hver gruppe indeholder 7 felter..
I stedet for at skrive 7 linier, for hver gruppe, kan du bruge "eval":

<script type="text/JavaScript">
function pris_ialt_1( frmObj ) {
    for (i=1;i<7;i++) {
        eval('var gram_pr_person_' + i + ' = frmObj.gram_pr_person_' + i + '.value.replace(/,/,".")');
        // osv..
    }
}
</script>

Det svarer til, at du f.eks. skriver:

var gram_pr_person_1 = frmObj.gram_pr_person_1.value.replace(/,/,".");
var gram_pr_person_2 = frmObj.gram_pr_person_2.value.replace(/,/,".");
var gram_pr_person_3 = frmObj.gram_pr_person_3.value.replace(/,/,".");
var gram_pr_person_4 = frmObj.gram_pr_person_4.value.replace(/,/,".");
var gram_pr_person_5 = frmObj.gram_pr_person_5.value.replace(/,/,".");
var gram_pr_person_6 = frmObj.gram_pr_person_6.value.replace(/,/,".");
var gram_pr_person_7 = frmObj.gram_pr_person_7.value.replace(/,/,".");

osv..


hmm.. hvorfor er der egentligt et "+", foran "frmObj"..?

/theSurfer
Avatar billede roenving Novice
12. juli 2005 - 07:39 #27
+'et er der måske for at caste tekst-strengen til en tal-værdi ?-)
Avatar billede thesurfer Nybegynder
17. juli 2005 - 20:15 #28
Hvor langt er du kommet?

/theSurfer
Avatar billede artico Novice
18. juli 2005 - 11:12 #29
Har næsten opgivet .... og leder efter en løsning..
Avatar billede thesurfer Nybegynder
18. juli 2005 - 21:53 #30
Har du lavet rettelserne?

/theSurfer
Avatar billede artico Novice
14. august 2005 - 20:25 #31
lukker
Avatar billede roenving Novice
14. august 2005 - 22:39 #32
Hvadfornoget ???

-- har du fundet en løsning eller har du opgivet projektet ?-)

-- under alle omstændigheder er der nogen, som har investeret noget af deres sparsomme fritid, så hvis du bare kaster et lakonisk 'lukker' ind, kan du være helt sikker på, at de brugere ikke i fremtiden vil føle sig animeret til at bruge yderligere kræfter på dine spørgsmål ,-(
Avatar billede artico Novice
14. august 2005 - 23:04 #33
Jeg opgav.. desværre ku ikke finde ud af det :-( Men vil gerne give points alligevel så bare kom med svar!
Avatar billede roenving Novice
14. august 2005 - 23:22 #34
Strandløven (aka thesurfer !-) har jo helt klart investeret sine kræfter, så det er vel værd at vente på hans svar ?-)
Avatar billede artico Novice
14. august 2005 - 23:32 #35
Jeps det gør jeg også :-)
Avatar billede thesurfer Nybegynder
15. august 2005 - 23:50 #36
Jeg smider hermed et svar :-)

/theSurfer
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