Avatar billede r9 Nybegynder
17. december 2001 - 16:54 Der er 12 kommentarer og
1 løsning

metodekald mellem HTML & JSP ?

Hvordan udføre man en metode i JSP, når en bruger påvirker en knap på klientsiden?

Jeg har en knap:
<input type=\"submit\" value=\"Tilføj\" onclick=\"metodekald()\">

når denne påvirkes, skal metoden kaldes:


metodekald()
{

do something.....

}




det hele ligge i én JSP side!
Avatar billede erikjacobsen Ekspert
17. december 2001 - 17:06 #1
Du kan kun udføre JavaScript i en onclick. Skal du udføre JSP skal
du hente en ny HTML-side.
Avatar billede r9 Nybegynder
17. december 2001 - 17:14 #2
ok.

hvad mener du med \"en ny HTML side\"?
Avatar billede r9 Nybegynder
17. december 2001 - 17:25 #3
jeg bruger det rigtig mange steder i mit program, så jeg håber på at man kan lave noget smart!
Avatar billede kresten Nybegynder
17. december 2001 - 17:32 #4
javaScript og Java har ikke rigtigt noget med hinanden at gøre *suk*

onClick er en javaSCRIPT event og har intet med JSP at gøre. Spørg i en anden gruppe.
Avatar billede r9 Nybegynder
17. december 2001 - 17:35 #5
--->kresten
det er jeg godt klar over

det behøver heller ikke være ved brug af onClick!!


bare det løses på en aller anden måde!!
Avatar billede erikjacobsen Ekspert
17. december 2001 - 17:46 #6
Hvordan bruger du det på din side?

En velkendt form for \"snyd\", der bl.a. bruges på chat-sider, er et
hente en ny side i en skjult ramme.
Avatar billede r9 Nybegynder
17. december 2001 - 17:51 #7
her er formen: 

<form name=\"form2\" method=\"post\" action=\"\">
    <div align=\"left\"> Nokia 8210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3100 kr/stk.
      <input type=\"text\" name=\"textfield2\" size=\"5\">
      <input type=\"submit\"  value=\"Tilføj\" onclick=\"gemvare()\">
    </div>
  </form>


når klienten påvirker den skal dette kaldes:

<%
b.Gemvare();
%>


det ligger på samme side?
Avatar billede r9 Nybegynder
17. december 2001 - 17:53 #8
der skal så gemmes en værdi i en vector i min java klasse. Og senere skal det gemmes i DB
Avatar billede r9 Nybegynder
17. december 2001 - 17:59 #9
lige nu løser jeg det ved at pakke det ind i noget java script:

</script>
<script lANGUAGE=\"JavaScript\">
public void gemvare()
{
<%
b.Gemvare();
%>
}
</script>


det er ikke så godt.
inde i min javascript metode kan jeg ikke tilgå
de variabler som jeg har defineret andre steder i JSP tacs
Avatar billede erikjacobsen Ekspert
17. december 2001 - 18:39 #10
nemlig - du skal hente en ny html-side, og evt gemme dine data i
en JavaBean på serveren imens.
Avatar billede goldenboy Nybegynder
26. december 2001 - 23:47 #11
Jeg har netop nu samme problem.
Jeg prøver at oprette en nyhed, og skal have teksten fra et tekstfelt over i en JSP javabean.
Jeg har samme problem som dig r9.

Jeg vil gerne have at når kliente trykker på Submit knappen, skal man tage teksten og gemme i en string, så jeg kan bruge stringen som parameter i et kald..

Hvis der er kloge hoveder derude, er vi nu 2 der lytter :-)
Avatar billede erikjacobsen Ekspert
26. december 2001 - 23:58 #12
Det er simpelt. Det er noget i retning af

  <form action=\"ensidemedenbean.jsp\">
    ...diverse felter
    <input type=\"submit\">
  </form>
Avatar billede marit Nybegynder
23. januar 2002 - 14:05 #13
Hvis siden må kalde sig selv igen, kan dette bruges.

<%//funktion udføres efter brugeren har trykket på knappen, og siden har kaldt sig selv igen.

if (request.getParameter("save")!=null) {
  if (request.getParameter("gem").equals("add")) {
    b.Gemvare();
  }
}
%>

<form name="form2" method="post" action="side1.jsp?gem=add">
<div align="left"> Nokia 8210&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3100 kr/stk.
<input type="text" name="textfield2" size="5">
<input type="button"  value="Tilføj" onclick="this.form.submit();">
</div>
</form>
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