Avatar billede glahn Nybegynder
04. december 2000 - 15:33 Der er 11 kommentarer og
2 løsninger

java-variabler i html-kode

Hvordan bruger jeg en variabel genereret af Java, som navn til fx. et textarea?

Har prøvet med :

<textarea name=\"<% variabel %>\">

Det virker ikke - nogle gode forslag???

Forklaring: Jeg henter en masse records i en db og udskriver dem i en tabel med while next. Jeg ville så gerne have et input-felt til hvert stykke data, sådan at jeg kunne skrive rettelser og opdatere databasen ved tryk på en submit-knap. For at gøre det hele dynamisk, er det nødvendigt at input-felterne - hvis antal kan variere - bliver navngivet alt efter hvad nummer de har i rækkefølgen.

Hvis nogen har en anden god løsning på dette, er jeg åben for forslag :-)
Avatar billede disky Nybegynder
04. december 2000 - 15:34 #1
du skal lave en get funktion i din java bean.

og så skrive <textarea name=\"<%=getvariabel()%>\">


og så virker det

Avatar billede disky Nybegynder
04. december 2000 - 15:35 #2
ups get funktionen skal selvfølgelig hente \'variabel\' fra dit program og returnere den som en string (er ikke nødvendigt men pænest da html dokumenter er en stor streng)
Avatar billede glahn Nybegynder
04. december 2000 - 15:36 #3
Bruger ikke beans - det er jeg nemlig alt for \"dum\" til at kunne hitte ud af :-(
Avatar billede disky Nybegynder
04. december 2000 - 15:37 #4
hvad bruger du så ??

er det en JSP side ?
Avatar billede glahn Nybegynder
04. december 2000 - 15:38 #5
Ja - det tror jeg nok. Jeg har lidt svært ved at finde ud af hvornår jeg bruger java og hvornår jeg bruger jsp.
Avatar billede disky Nybegynder
04. december 2000 - 15:41 #6
en jsp side er en html side med integreret java :-)

jeg bixer lige et eksempel på løsningen af dig problem.
Avatar billede glahn Nybegynder
04. december 2000 - 15:42 #7
Tak - det haster ikke, for jeg smutter af nu - kigger ind igen i morgen. Havde ikke regnet med at få svar så hurtigt :-)
Avatar billede disky Nybegynder
04. december 2000 - 15:46 #8
<html>
<head><title>JSP Page</title></head>
<body>

<%
    String name=\"Fusker\";
%>

<FORM ACTION=\"/servlet/formmail.pl,\">
<P><INPUT TYPE=\"TEXT\" NAME=\"<%=name%>\" VALUE=\"<%=name%>\"></P>
<P><INPUT TYPE=\"SUBMIT\" NAME=\"Submit1\"></P>
<INPUT TYPE=\"RESET\" NAME=\"Reset1\">
</FORM>


</body>
</html>



Det eksempel virker
Avatar billede davsclaus Nybegynder
04. december 2000 - 22:27 #9
Der er en forskel når man skriver jsp kode i start tagget
a) <%
b) <%=

I a er det rent java kode, hvor man skal afslutte med ; og hvis man skal skrive til html streamen skal man bruge out.print() metoden

I b er det en direkte out kommando, hvor det der står efter = tegnet bliver
udskrevet. (Internt benyttes toString metoden, som alle java metoder jo har).

Derfor kan du skrive både int, String osv. ud med <%=

eks med variable navn:

<%= navn %>

<% out.print(navn); %>

I <%= tag\'en kan du også kalde en metode som output, f.eks.

<%= myBean.getNavn() %>
Avatar billede glahn Nybegynder
05. december 2000 - 13:58 #10
>> disky

hvad er lige pludselig den der formmail.pl for noget - er det ikke noget pearl??

>> davsclaus

jeg skal jo ikke have det skrevet ud på skærmen, men bruge det til at navngive et inputfelt...???
Avatar billede glahn Nybegynder
05. december 2000 - 14:00 #11
Øhhhh nåhhh ja, disky - jeg skal jo slet ikke bruge mail, jeg skal videre til en ny jsp-side, som putter de nye data i databasen.
Avatar billede disky Nybegynder
05. december 2000 - 14:03 #12
glahn: jo det plejer at være et perl script.

Men er på den server jeg roder med mappet til en Servlet pga. at nogle brugere anvender et perl script.

Eksemplet viste bare at den variabel der hedder name bliver indsat som \'Name\' og \'Value\' i et felt i formen. Det var bare et eksempel på hvordan du bruger en variabel i en form.
Avatar billede glahn Nybegynder
05. december 2000 - 14:31 #13
OK - begge to, jeg HAR fattet det nu (det tog lige lidt tid) - lighedstegnet gør at det bliver skrevet til navnet, istedet for på skærmen. Har prøvet det af, og det virker.

Tusind tak skal I ha\' :-)
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