в javascript вызывающая функция, которая в while должна вызывать функции java

#java #javascript #function

#java #javascript #функция

Вопрос:

Я создаю одну страницу с двумя текстовыми полями. Когда пользователь вводит значение в поле, а затем нажимает кнопку отправки, я вызываю функцию one. В этой функции я получаю эти два значения. Затем я должен передать эти значения одной функции Java, которая вернет результат. Затем я покажу этот результат. я не знаю, как это сделать. Я написал код. Но это заканчивается ошибкой.

 <%@ page import="java.util.*,mypackage.JavaFile"%>
<html>
<HEAD>
<TITLE>
sample script

</TITLE>
<SCRIPT LANGUAGE = "JavaScript">

function getResult(form){
var value1 = form.val.value;
var value2 = from.val1.value;
<%
String res = JavaFile.myFunc(value1,value2);
%>
return res;
}
</SCRIPT>
</HEAD>
<BODY>
<FORM NAME="form" ACTION=""  METHOD="GET">Enter value1:<br>
<INPUT TYPE="text" NAME="val" VALUE=""><P>
Enter value2<br>
<INPUT TYPE="text" NAME="val1" VALUE=""><P>
<INPUT TYPE="button" value="submit" onClick="getResult(this.form)">
</FORM>
</BODY>
</HTML>
  

При ошибке компиляции1 значение значения2 не устранено. Пожалуйста, помогите.

Комментарии:

1. вы вызываете Java-метод из javascript, как если бы он был доступен в клиентской среде.

Ответ №1:

Итак, вас смущает тот факт, что ваш JSP — это код на стороне сервера, а javascript — это код на стороне браузера. Вам нужно фактически отправить форму через HTTP POST и получить значения value1 и value2 из тела запроса POST, затем использовать их в вашем JSP Java-коде.

Ответ №2:

Вы смешиваете java с javascript — код javascript запускается на стороне клиента (т. Е. в браузере), а код java выполняется на вашем сервере. Разные компьютеры, разные языки программирования, совершенно разные контексты.

Вы должны отправить переменные с (ajax?) попаданием на сервер, вызвать свою java-функцию, вернуть ответ и браузер, чтобы захватить ответ и показать его пользователю

Комментарии:

1. как выполнить вызов ajax? Пожалуйста, приведите пример

Ответ №3:

Итак, вам нужно различать JavaScript на стороне клиента и Java на стороне сервера. Было бы проще, если бы вы создали для этого две отдельные страницы. На первой странице вы можете создать форму с ее входными данными и кнопкой отправки. Пусть эта форма отправляется на вторую страницу.

Затем на второй странице вы можете попытаться получить значения, которые были отправлены от клиента. В этом сценарии вообще нет необходимости использовать JavaScript.

Чтобы получить значения, отправленные из формы на Java на странице JSP, вы можете:

   <%
       String value1 = request.getParameter("val");
       String value2 = request.getParameter("val1");



  %> 
  

Теперь вы можете использовать значения в вашем Java-методе, который вы хотите вызвать.