Подтвердить что ты не робот

Как передать значения JavaScript в Scriptlet в JSP?

Может ли кто-нибудь сказать мне, как передать значения JavaScript в Scriptlet в JSP?

4b9b3361

Ответ 1

Ваши значения javascript являются клиентскими, ваш скриптлет работает на стороне сервера. Поэтому, если вы хотите использовать переменные javascript в скриптлете, вам необходимо отправить их.

Чтобы достичь этого, либо сохраните их в полях ввода, либо отправьте форму, либо выполните запрос ajax. Я предлагаю вам заглянуть в JQuery для этого.

Ответ 2

Я могу предоставить два способа:

a.jsp

<html>
    <script language="javascript" type="text/javascript">
        function call(){
            var name = "xyz";
            window.location.replace("a.jsp?name="+name);
        }
    </script>
    <input type="button" value="Get" onclick='call()'>
    <%
        String name=request.getParameter("name");
        if(name!=null){
            out.println(name);
        }
    %>
</html>

b.jsp

<script>
    var v="xyz";
</script>
<% 
    String st="<script>document.writeln(v)</script>";
    out.println("value="+st); 
%>

Ответ 3

Я интерпретировал этот вопрос как:

"Кто-нибудь может сказать мне, как передавать значения для JavaScript для использования в JSP?"

Если в этом случае этот HTML файл передал бы рассчитанную на сервер переменную JavaScript в JSP.

<html>
    <body>
        <script type="text/javascript">
            var serverInfo = "<%=getServletContext().getServerInfo()%>";
            alert("Server information " + serverInfo);
        </script>
    </body>
</html>

Ответ 4

просто, вы не можете!

JSP - это серверная сторона, javascript - это значение клиентской стороны во время оценки javascript, там больше нет кода jsp.

Ответ 5

Если вы говорите, что хотите передать значение javascript из одного jsp в другое в javascript, используйте метод URLRewriting для передачи переменной javascript в следующий файл jsp и получите доступ к этому в следующем jsp в объекте запроса.

Иными словами, вы не можете сделать это.

Ответ 6

Его невозможно, как вы ожидаете. Но вы можете сделать что-то подобное. Передайте ваше значение java script сервлету/контроллеру, выполните вашу обработку и затем передайте это значение на страницу jsp, поместив его в какой-то объект в качестве вашего требования. Затем вы можете использовать это значение по своему усмотрению.

Ответ 7

Вы не можете этого сделать, но можете сделать обратное:

В вашем jsp вы можете

<%
String name = "John Allepe";    
request.setAttribute("CustomerName", name);
%> 

Доступ к переменной в js

<script> 
var name = "<%= request.getAttribute("name") %>";
alert(name); 
</script>