Avatar billede mik28 Seniormester
15. december 2004 - 15:01 Der er 25 kommentarer og
1 løsning

Submitte en værdi i en form

Jeg laver en form på baggrund af noget jsp som ser således ud

<form name="update" method="get">
   
    <input type="hidden" name="produktgruppe_select" value="1">
    <input type="hidden" name="under_produktgruppe_select" value="5">
    <input type="hidden" name="under_under_produktgruppe_select" value="1">
   
    <input type="hidden" name="update" value="update">
    <table border="1" style="width:900px;">
      <th style="width:225px;">Product</th>
      <th style="width:125px;">Form</th>
      <th style="width:125px;">Type</th>
      <th style="width:325px;">Description</th>
      <th style="width:100px;"></th>
        <tr>
        <input type="hidden" name="id" value="1">
        <td><input type="text" name="product" value="dgdgd" size="20"></input></td>
        <td><input type="text" name="form" value="hgddhghdg" size="20"></input></td>
        <td><input type="text" name="type" value="dhhdghd" size="20"></input></td>
        <td><input type="text" name="description" value="1234" size="20"></input></td>       
        <td><input type="submit" name="submit" value="Opdater"></input>
            <input type="submit" name="submit1" value="Slet"></input></td>
        </tr>
       
        <tr>
        <input type="hidden" name="id" value="2">
        <td><input type="text" name="product" value="Therm-Chek®7103L" size="20"></input></td>
        <td><input type="text" name="form" value="Liquid" size="20"></input></td>
        <td><input type="text" name="type" value="Ba/Zn" size="20"></input></td>
        <td><input type="text" name="description" value="High efficiency stabiliser with low volatility, no nonyl phenol and very low free phenol. Can be used in clear and filled applications" size="20"></input></td>       
        <td><input type="submit" name="submit" value="Opdater"></input>
            <input type="submit" name="submit1" value="Slet"></input></td>
        </tr>
        </table>
        </form>

Jeg har to hidden felter (opdater og slet). Er det muligt at lave noget smart så man sender den ene værdi når man trykker på den ene knap, og den anden på den anden, eller er jeg nødsaget til at lave en anden form
Avatar billede baitianlong Nybegynder
15. december 2004 - 16:58 #1
Jeg vil tro du kan gøre noget i stil med dette. Nulstil, den du ikke vil have...

<input type="submit" name="submit" value="Opdater" onClick="this.form.slet.value='';">
<input type="submit" name="submit1" value="Slet" onClick="this.form.opdater.value='';">

Ved ikke om det vil virke, men prøv det :)
Avatar billede mik28 Seniormester
15. december 2004 - 17:23 #2
Nej den går ikke. Det som jeg skal have den til er at sende en bestemt værdi med alt efter hvilken knap jeg trykker på.
Avatar billede mik28 Seniormester
15. december 2004 - 17:27 #3
<form name="update" method="get">
   
    <input type="hidden" name="produktgruppe_select" value="1">
    <input type="hidden" name="under_produktgruppe_select" value="5">
    <input type="hidden" name="under_under_produktgruppe_select" value="1">
   
    DE HER 2 VÆRDIER SKAL SUBMITTES AFHÆNDIGT AF KNAPPEN
    <input type="hidden" name="update" value="update">
    <input type="hidden" name="slet" value="slet">

        <input type="hidden" name="id" value="1">
        <input type="text" name="product" value="dgdgd" size="20"></input>
        <input type="text" name="form" value="hgddhghdg" size="20"></input>
        <input type="text" name="type" value="dhhdghd" size="20"></input>
        <input type="text" name="description" value="1234" size="20"></input>       
       
        <input type="submit" name="submit" value="Opdater"></input>
        <input type="submit" name="submit1" value="Slet"></input>
       
        </form>
Avatar billede baitianlong Nybegynder
15. december 2004 - 17:37 #4
Måske ved at tilføje en tredie:

<input type="hidden" name="update" value="update">
<input type="hidden" name="slet" value="slet">
<input type="hidden" name="updateslet" value="">

<input type="submit" name="submit" value="Opdater" onClick="this.form.opdaterslet.value=this.form.opdater.value;">
<input type="submit" name="submit1" value="Slet" onClick="this.form.opdater.value=this.form.slet.value;">
Avatar billede mik28 Seniormester
15. december 2004 - 17:42 #5
Det duer hvis ikke for værdierne blive submittet alligevel og jeg bruge dem som argumeneter. Jeg må vist bide i det sure æble og lave en seperat form til slet knappen. Tak for interessen :-)
Avatar billede olebole Juniormester
15. december 2004 - 22:38 #6
<ole>

Dette er måden, man normalt gør det på:

<form ........ method="post">
<input type="hidden" name="context" value="">
<input type="text" name="Blablabla">
<button type="submit" onclick="this.form.context.value='slet'">Opdater</button>
<button type="submit" onclick="this.form.context.value='opdater'">Slet</button>
</form>


Så kan i PHP du skrive:
<?
if ( isset($_POST["context"]) && $_POST["context"]<>"" ) {
  switch ($_POST["context"]) {
      case "slet":
        // Kør funktion, der sletter brugeren
      break;

      case "opdater":
        // Kør funktion, der opdaterer DB
      break;
  }
}
?>

/mvh
</bole>
Avatar billede mik28 Seniormester
16. december 2004 - 13:13 #7
Skulle jeg så ikke kunne gøre det her


<form name="nytprodukt">
<table style="width:430px;">
<input type="text" name="product" value=""></input>
<input type="text" name="form" value=""></input>
<input type="text" name="type" value=""></input>
<textarea name="description" rows="10" cols="40"></textarea>
<button type="submit" onclick="this.nytprodukt.nyt.value='indsaet'">Opret Nyt</button>
</form>
Avatar billede mik28 Seniormester
16. december 2004 - 13:14 #8
Og så teste på den således

if (request.getParameter("nyt")!=null && request.getParameter("nyt").equals("indsaet")){
mit sql
}
Avatar billede olebole Juniormester
16. december 2004 - 18:45 #9
Undskyld, men ved du overhovedet, hvad HTML er?
Avatar billede mik28 Seniormester
18. december 2004 - 03:46 #10
Øhhhh ja, det vil jeg mene. Mit spørgsmål går ud på to ting.

1. Er det lovligt at have 2 knapper i en form (grunden til at jeg vil have det er at så kan jeg spare et databaseopslag)

2. Hvordan kan jeg i så fald gøre værdien som bliver submittet afhængig af knappen? Jeg har jo denne linien
<button type="submit" onclick="this.nytprodukt.nyt.value='indsaet'">Opret Nyt</button>

Jeg læser onclick som onclick="this.FORMENS_NAVN.FELTETS_NAVN.SÆT_VÆRDIEN_TIL='VÆRDIEN_JEG_VIL_SUBMITTE'"

i JSP tester jeg så på den værdi som jeg submitter med

if (request.getParameter("nyt")!=null && request.getParameter("nyt").equals("indsaet")){
mit sql
}
Avatar billede olebole Juniormester
18. december 2004 - 08:50 #11
Din kode tyder ikke meget på det. Hvad laver table-tagget? Hvad laver de ikke eksisterende 'lukke-tags' på dine inputs? Det har vist ikke meget med HTML at gøre  ;o)
Derudover gør du jo ikke det, jeg har skrevet til dig:
  <button type="submit" onclick="this.form.nyt.value='indsaet'">Opret Nyt</button>
Avatar billede olebole Juniormester
18. december 2004 - 08:51 #12
... alle elementer i en form, kan adressere formen med 'this.form' - men det gælder kun form-elementer. Du kan ikke bruge det i f.eks. en onclick-handler på et link
Avatar billede mik28 Seniormester
18. december 2004 - 10:12 #13
Det er et udsnit af min side. Hvis det er </input> du henviser til så skal de være der hvis det skal validere som XHTML 1.0, da alle tags skal være lukket.

<span style="position:absolute;padding-top:0px;margin-top:150px;margin-left:0px;height:150px;width:800px;background-color:transparent;">
   
    <table border="1" style="width:900px;">
      <th style="width:225px;">Product</th>
      <th style="width:125px;">Form</th>
      <th style="width:125px;">Type</th>
      <th style="width:325px;">Description</th>
      <th style="width:100px;"></th>
        <tr>
        <form name="update" method="get" style="display:inline;">
       
        <input type="hidden" name="update" value="update">
       
        <input type="hidden" name="produktgruppe_select" value="1">
        <input type="hidden" name="under_produktgruppe_select" value="5">
        <input type="hidden" name="under_under_produktgruppe_select" value="1">
       
        <input type="hidden" name="id" value="46">
        <td><input type="text" name="product" value="Produkt 1" size="20"></input></td>
        <td><input type="text" name="form" value="Flydende" size="20"></input></td>
        <td><input type="text" name="type" value="Type X" size="20"></input></td>
        <td><textarea name="description" rows="5" cols="40">Dette er beskrivelsen</textarea></td>       
       
        <td><input type="submit" name="submit_update" value="Opdater"></input>
        </form>
       
        <form name="slet" method="get" style="display:inline;">
       
        <input type="hidden" name="slet" value="slet">
       
        <input type="hidden" name="produktgruppe_select" value="1">
        <input type="hidden" name="under_produktgruppe_select" value="5">
        <input type="hidden" name="under_under_produktgruppe_select" value="1">
       
        <input type="hidden" name="id" value="46">
               
        <input type="submit" name="submit_slet" value="Slet"></input>
        </form>
        </td>
        </tr>
        </table>
       
        </span>
Avatar billede mik28 Seniormester
18. december 2004 - 10:41 #14
Så virker det. Tak for hjælpen.

<form name="update" method="get" style="display:inline;">
       
<input type="hidden" name="update_slet" value=""></input>
       
<button type="submit" onclick="this.form.update_slet.value='update'">Opdater</button>
<button type="submit" onclick="this.form.update_slet.value='slet'">Slet</button>
</form>
Avatar billede baitianlong Nybegynder
18. december 2004 - 17:15 #15
Med hensyn til dine </input> så vil det nok følge xhtml lidt bedre hvis de ser sådan ud:

<input type="submit" onclick="et eller andet" value="Opdater" />
Avatar billede mik28 Seniormester
18. december 2004 - 18:32 #16
okay. Godt at vide
Avatar billede olebole Juniormester
18. december 2004 - 22:43 #17
... men undlad at bruge XHTML foreløbigt. Det har du ikke andet ud af, end at dine sider parses som dårlig HTML4.01 ... også selvom du skriver pinlig korrekt XHTML og at din kode validerer i hoved og r..
Det er idag langt bedre at skrive korrekt HTML4.01 end at skrive XHTML1.0 eller 1.1  ;o)
Avatar billede mik28 Seniormester
18. december 2004 - 23:19 #18
Okay. Godt at vide. Jeg vil jo bare gerne gøre det så godt som det er muligt
Avatar billede mik28 Seniormester
18. december 2004 - 23:20 #19
ligger I nogle svar ;-)
Avatar billede baitianlong Nybegynder
18. december 2004 - 23:26 #20
jeg tror det er <o/b>'s svar, der har hjulpet dig mest... :)
Avatar billede olebole Juniormester
18. december 2004 - 23:34 #21
s'gerne ... men du skal lige vide, at alle de tags, der normalt ikke har lukke-tags i HTML, skal lukkes på den måde, legende.dk viser dig, under XHTML. Er du i tvivl, er der en god fortegnelse her:
  http://www.w3.org/TR/html401/index/elements.html

Angående problematikken omkring HTML/XHTML har jeg efter bedste evne prøvet at mindske forvirringen med disse to:
  http://www.eksperten.dk/artikler/537
  http://www.eksperten.dk/artikler/538

Jeg er ikke et øjeblik i tvivl om, du gerne vil gøre det, så godt du kan - og jeg forstår udmærket godt, hvorfor du skriver i XHTML. Derfor har jeg skrevet de to artikler, som forhåbentlig kan give nogle vigtige informationer, der ofte udelades, hvor man lærer fra sig om XHTML  :)
Avatar billede olebole Juniormester
18. december 2004 - 23:34 #22
Jeg synes også du bør svare legende  ;o)
Avatar billede mik28 Seniormester
18. december 2004 - 23:35 #23
Tak for hjælpen :-)
Avatar billede olebole Juniormester
18. december 2004 - 23:41 #24
Selvtak ... og for points  :)

legende >> det må udligne sig i det lange ræs ... God Jul, skal du dog ha' her og nu  *<();o)
Avatar billede baitianlong Nybegynder
19. december 2004 - 00:05 #25
<o/b> -> Det går nok. Jeg indhenter dig snart *LOL*. Læs eventuelt min "karma" til dig, som jeg skrev den anden dag
Avatar billede olebole Juniormester
19. december 2004 - 00:08 #26
*LooOooL* skuffen med kasteknivene ... takker  ;D
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