JavaScript действительно ваш друг здесь.Дайте также имя для ввода и дайте кнопке открыть диалог с помощью window.open()
.
<form name="form1">
<input type="text" name="text1" readonly="true" />
<button onclick="window.open('/searchServlet');">search</button>
</form>
Затем в HTML, сгенерированном /searchServlet
и его JSP в диалогевы можете использовать window.opener
, чтобы получить родительское окно, а затем оттуда делать обычные вещи document
, как будто вы сидите в родительском окне.Вот простой базовый пример:
<button onclick="window.opener.document.form1.text1.value='1'; window.close();">1</button>
<button onclick="window.opener.document.form1.text1.value='2'; window.close();">2</button>
<button onclick="window.opener.document.form1.text1.value='3'; window.close();">3</button>
Конечно, вы хотели бы абстрагировать / рефакторизовать детализацию / дублирование в некоторой функции.