2013-07-12 3 views
0

Я хотел бы для цикла в JQuery с помощью .html() так:jquery .html ('<% jsp scriplet%>');

.html('<select property="doctype" name="doctype"><%for (String number : list) 
{%>'<option value="'<%=number%>'>'<%out.println(number); %>'</option>'<% } %>'</select>'); 

В Java для каждого списка петли он использует объект java.util.ArrayList<String>.

Здесь функция .html(); вызывается, когда мы нажимаем кнопку «Добавить». Вот мой вопрос: можно ли написать код jsp scriplet в .html() jquery.

+0

да, это возможно, учитывая, что оно вычисляется на сервере –

ответ

0
function will call when we click on add button. 

Нет, вы не можете.

Jsp - это время компиляции.

Подробнее о скрипте java на стороне клиента и jsp играет на стороне сервера.

0

jsp, jsf и другие виды веб-технологий java отображаются на стороне сервера. Поскольку jquery - технология клиентской стороны, это невозможно.

Вместо этого вы можете совершать ajax-вызовы через jquery и обновлять html.

0

Вы не можете, чтобы клиент выполнял Java в вашем скриптлете. К счастью, то, что вы хотите сделать, очень распространено.

Не пытайтесь динамически генерировать JavaScript в скриптлет или jsp. Очень легко сделать ошибку и в итоге получить неверный JavaScript.

Вместо этого используйте .jsp, чтобы выплевывать HTML. Затем используйте статический JavaScript для захвата этого HTML и поместите его туда, где вы хотите в DOM.

Например, файл JSP может выглядеть примерно так:

<div id="destination">The select element will be added to this div.</div> 

<select id="my-select" property="doctype" name="doctype"> 
<c:forEach items="${list}" var="number"> 
    <option value="${number}">${number}</option> 
</c:forEach> 
</select> 

<script> 
    $('#destination').append($('#my-select')); 
</script> 
Смежные вопросы