wie man den Wert aus dem javascript-code, jsp-scriptlet mit der gleichen jsp-Seite
unten ist mein code (1.jsp)
<html>
<head>
<script type="text/javascript">
function changeFunc() {
var selectBox = document.getElementById("selectBox");
var selectedValue = selectBox.options[selectBox.selectedIndex].value;
document.write("\n value is"+selectedValue);
}
</script>
</head>
<body>
<form method="post" action="SampServlet">
<select id="selectBox" name="selurl" onchange="changeFunc();">
<option value="1">Option #1</option>
<option value="2">Option #2</option>
</select>
</form>
</body>
</html>
Hier habe ich eingefügt, diesen code in eine jsp-Seite.Und immer den Wert von "selectedValue" von javascript scriptlet mit der gleichen jsp-wie diese.
<% String val=(String)request.getParameter("selurl");
System.out.println("\n selected value is:"+val); %>
Bin ich immer der ausgewählte Wert als null als Ausgabe. Und wenn ich drucken javascript selectedValue-parameter es gibt mir die richtige Ausgabe also,die Ausgabe als die option ausgewählt ist.Aber in scriptlet-bin immer null.Wo ist der Fehler.Ich habe alle Header und Richtlinien.Bitte helfen Sie mir.
Ich habe versucht, mit den Ansätzen vorhanden, die in stackoverflow.com/questions/5701031/... aber nicht immer..Noch immer null-Wert
InformationsquelleAutor user2365917 | 2013-05-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
In Ihrem web-browser haben Sie nur html, javascript und css-Dateien. Alle JSP-code ist gedacht, um auf dem server ausgeführt werden. So erhalten Sie nur die Ausgabe der jsp-Datei. Und nach diesem können Sie nicht ändern Sie den jsp-code.
Sie brauchen nicht zu ändern, das scriptlet. Auf der
onchange
Veranstaltung, die Sie gerade brauchen, um einen Ajax-request an das servlet mit Ihren neuen Werten.Wie kann ich ajax-request.Weil bin neu in ajax.und beim laufen ist es erforderlich, fügen Sie alle jar-Dateien zum ausführen von ajax?
Ajax kann einfach getan werden JavaScript. Nichts Benötigt. Alles geschieht auf der client-Seite. Jetzt können Sie api.jquery.com/jQuery.ajax Methode, um ajax-request. Und hier ist ein sehr gutes tutorial, AJAX - developer.mozilla.org/en-US/docs/AJAX
danke..ich werde versuchen mit diesem.
InformationsquelleAutor me_digvijay
Verwenden Sie die Schaltfläche "senden" erhalten Sie Ihre Ausgewählten Wert an der gleichen Seite und
keine Notwendigkeit, jede Funktion,keine Notwendigkeit, "onsubmit".
Beispiel:
InformationsquelleAutor 151291
Select-element sollte mit einem name-Attribut, und Sie müssen die Verwendung dieser Bezeichnung in der Anfrage.getParameter()
EDIT:
Wenn Sie möchten, dass der server die Anfrage erfolgt über das select-element das onchange-Ereignis, müssen Sie Ajax.
Verwendung von jQuery,
name="selurl"
?Ja..ich habe aktualisiert es..Aber nach der Auswahl von Wert in meinem scriptlet es gibt mir null.Bitte helfen Sie mir.
Ich brauche diesen Wert zu senden, um servlet und Holen Sie sich die details der entsprechenden option(ausgewählte option).
Ist es nicht möglich, ohne die jQuery(AJAX).Da habe ich nicht das wissen über ajax.Bitte helft mir mit javascript und jsp
Es ist möglich,. Sie können einen versteckten input-element im Formular, setzen Sie seinen Wert auf onchange und senden Sie das Formular mit Formular.submit();
InformationsquelleAutor c.P.u1
Ihnen fehlt die
<submit>
- Taste.Hinzufügen-Schaltfläche und klicken Sie darauf, um das Formular abschicken, um Ihr servlet mit dem ausgewählten Wert gesendet
selurl
. Bitte beachten Sie, dass Ihre form istaction
- Attribut verweist aufSampServlet
das scheint zu sein, ein servlet. Für jsps wir haben in der Regel so etwas wieaction="page.jsp"
in form.BEARBEITEN:
Wenn Sie buchen möchten, das Formular automatisch, wenn der Benutzer wählt einen Wert aus der drop-down-setzen Sie einfach Ihre
onchange
: (Sie brauchen nicht einmal die<submit>
Taste)JSP server-side-mate. JSP-Skriptlets
<% %>
nicht immer führen auf der client-Seite, d.h., ohne eine senden. Wenn die app erfordert keine Einreichen, dann müssen Sie verwenden Ajax/jQuery. Aber denken Sie daran diese aufrufen würde ein servlet ist, das reden würde zu einer DB und die Antwort zurückgegeben wird, können Sie dann NUR über Javascript. Das ist in Ordnung meiner Meinung nach aber es gibt keinen Weg, um Ihre JSP-code-block-Verfahren diese Antwort jetzt, da es abgerufen wurde auf der client-Seite nicht auf server-Seite.Wenn ich submit() nach der Auswahl ist mein problem gelöst habe?
Ja, sehen Sie den ausgewählten Wert in der Tomcat-Konsole anmelden (da Sie verwendet System.out). Drucken Sie auf der Webseite verwenden
<p>The selected value is <%= request.getParameter("selurl") %></p>
(Merke, es ist kein Semikolon in <%= %> block.) Auch Ihre form istaction
zeigen sollte, zu dieser jsp-Datei, so dass es empfängt die post-Daten.Dann welches Ereignis sollte ich verwenden in meinem <select> onchange oder "onSubmit" ich Las in einem Artikel, wählen Sie einfügen soll onClick oder onsubmit.Wenn ich submit-button, den ich nutzen sollte "onsubmit".Wie?
InformationsquelleAutor Ravi Thapliyal