jsp out.write тег сценария внутри сценария

Как вывести тэг скриптлета out.write, если файл out.write уже есть в тэге скриптлета?

    <% if (answerList.size() > 2){
                            int toPrint = answerList.size() - 2;
                            int init = 2;

                            for (int x = 0; x < toPrint; x++){
                                out.write("<td width='30%' class='label' nowrap='nowrap'><label></label></td>");
                                out.write("<td><input type='checkbox' name='to_delete" + (init+1) + "' id='to_delete" + (init+1) + "' value='to_delete'> &nbsp &nbsp &nbsp ");
                                out.write("<input type='text' name='answer' id='answer' class='mlselect'  maxlength='200' size='90' value='<%=((SurveyAnswerBean)answerList.get(answerList.size()-"+(init+1) +")).getAnswerText()%>'> &nbsp ");
                             }
                            System.out.println("Answer List more than 2"); 
                            System.out.println("To print: " + toPrint);
                        }%>

Я пытался, но есть ошибка тега, любая помощь будет оценена!

1 ответ

Решение

Ответ в том, что вы не можете вкладывать теги scriplets, и это также не имеет смысла делать это (потому что вы не можете оценить переменные на стороне сервера на стороне клиента).

Вы должны заменить:

"...value='<%=((SurveyAnswerBean)answerList.get(answerList.size()-"+(init+1) +")).getAnswerText()%>'...

с:

"...value='" + ((SurveyAnswerBean)answerList.get(answerList.size()-(init+1))).getAnswerText() +"'...
Другие вопросы по тегам