18. marts 2003 - 19:15Der er
9 kommentarer og 2 løsninger
Embedded java i javascript.
Jeg tror dette må være simpelt... men jeg kan åbentbart ikke lige finde min egen fejl...
Jeg har følgende javascript funktion: <SCRIPT LANGUAGE="JavaScript"> function addRow(id){ var tbody = document.getElementById("myTable").getElementsByTagName("TBODY")[0]; <% String id = %> id <% ; add(id); %> var row = document.createElement("TR") var td1 = document.createElement("TD") td1.appendChild(document.createTextNode(id)) row.appendChild(td1); tbody.appendChild(row); } </script>
-------------------------------------------- Som det nok kan ses, har jeg en javametode der hedder add(String id); Men det er ikke den der driller! Det er denne linie jeg får en fejl i String id = %> id <% ;
det første id, er jo det string-object jeg er ved at oprette. Det næste id er det id, der kommer med som parameter i javascript funktionen.
Jeg får følgende fejl. :\Programmer\Apache Tomcat 4.0\work\localhost\_\cookbook\searchFromIngredient$jsp.java:82: Incompatible type for declaration. Can't convert void to java.lang.String. String id =
arne_v> Tja... det var jeg jo faktisk klar over... men den smuttede lige, da man jo skal kunne lave dynamiske metoder :)
Kan I hjælpe komme med et forslag til hvordan jeg så får løst dette problem:
Jeg har en <select>, hvor man skal kunne vælge flere værdier. Altså én ad gangen. Hver gang der vælges en værdi, skal det vises på skærmen (p.t. i en tabel), og samtidig skal det smides i en vector i java-delen... Når nu java-delen bliver fortolket på serveren... er der så ingen mulighed for at få input fra brugeren uden at kalde en ny side?
Jeg vil tro at du kan lave noget JavaScript der ved valg displayer en JSP side i en frame. JSP siden viser så den tabel der skal vises *og* tilføjer noget data på server som en "side-effect".
[men spørg mig ikke om hvodan man laver noget sådant i JavaScript]
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.