Получить пользовательский ввод из текстового поля на JSP - PullRequest
2 голосов
/ 28 апреля 2009

Мне нужно получить значение, которое пользователь ввел в текстовое поле в JSP. Я использовал JavaScript для получения значения, но затем мне нужно получить доступ к той же самой переменной вне JavaScript позже на странице.

Вот что у меня есть:

<script type="text/javascript">

   var sp;

function setPolicy(){

sp = document.getElementById('policy').value;

if(sp != "")
    alert("You entered: " + sp)

else
    alert("Would you please enter some text?")
}

</script>

текстовое поле:

input type="text" id='policy' size="15" tabindex = "1" onblur="setPolicy()"

Но мне нужно получить доступ к строке, введенной позже в этом текстовом поле «политика», в скрипте, чтобы вызвать функцию в моем сессионном компоненте. Есть ли способ передать эту переменную за пределы JavaScript? Или есть другой способ сделать это?

Спасибо!

Ответы [ 3 ]

1 голос
/ 28 апреля 2009

Выполнение JavaScript происходит на стороне клиента, а Scriptlet выполняется на стороне сервера. Вы пытаетесь объединить два.

Вы должны отправить форму на ту же страницу, передав параметр, значение которого будет введено в текстовое поле. Ваш скриптлет должен проверить, присутствует ли параметр или нет. При первом входе в этот jsp параметр не будет представлен, он будет доступен только тогда, когда пользователь введет что-либо в текстовое поле.

Возможно, это не лучшее решение, так как я не знаю всего контекста.

0 голосов
/ 28 апреля 2009

Если вы спрашиваете, как получить значение ввода текста в сессионном компоненте Java, это не имеет никакого отношения к вашему коду JavaScript.

Сессионный компонент является кодом на стороне сервера. Чтобы передать входное значение вашему сессионному компоненту, вам нужно изменить код на стороне сервера, сервлет, действие распорки, действие веб-работы в зависимости от того, какую веб-среду вы используете.

0 голосов
/ 28 апреля 2009

Я не уверен, что у вас еще есть жизненный цикл jsp. К тому времени, когда JavaScript работает, все скриптлеты были оценены.

Под этим я подразумеваю, что один JSP визуализируется, html и javascript отправляются в ответ браузеру, и больше нет сервера для интерпретации JSP.

Итак, вы должны думать о своей проблеме как о том, как я могу связаться с сервером, результат действия пользователя?

Возможно, отправив форму для действия на сервере.

...