Условно установить атрибут для элемента с помощью JSP Documents (JSPX)

  1. C не проверяет границы массива. Ошибка сегментации будет возникать только в том случае, если вы попытаетесь разыменовать указатель на память, в котором у вашей программы нет разрешения на доступ. Просто пройти мимо конца массива вряд ли вызовет такое поведение. Неопределенное поведение - это просто неопределенное. Это может показаться , что работает нормально, но вы не должны полагаться на его безопасность.
  2. Ваша программа вызывает неопределенное поведение, обращаясь к памяти за конец массива. В этом случае одна из ваших записей str[i] = c перезаписывает значение в i.
  3. C ++ имеет те же правила, что и в C.
18
задан iainmcgin 2 October 2008 в 17:49
поделиться

6 ответов

Я использую пользовательский тег JSP с динамическими атрибутами. Вы используете его как это:

<util:element elementName="button" name="btn1" disabled="$(isDisabled ? 'disabled' : '')"/>

В основном, то, что делает этот тег, генерируют элемент XML с elementName, и помещает все атрибуты, существующие в тег, но пропускает пустые.

сам тег довольно легко реализовать, моя реализация является всего 44 строками долго.

10
ответ дан alex 2 October 2008 в 17:49
поделиться

Чтение об автоматическом jsp к jspx преобразователю я столкнулся <jsp:element> и <jsp:attribute> теги. Если я понимаю, что правильно необходимо быть в состоянии сделать что-то как

<jsp:element name="button">
  <jsp:attribute name="someAttribute">value</jsp:attribute>
</jsp:element>

и иметь jsp вывод механизма

<button someAttribute="value"/>

или что-то как этот. Единственная проблема, на которую указывают на странице выше, состоит в том, что это, кажется, не работает хорошо с условными конструкциями. Автор преобразователя работал вокруг того создания некоторых тегов помощника, которые можно взглянуть на загрузку исходного кода, который я предполагаю. Надежда, которая помогает.

3
ответ дан agnul 2 October 2008 в 17:49
поделиться

Я действительно не использую JSP (и я ответил однажды, затем удалил его, когда я понял, "должен допустимым XML" вещь). Самое чистое, которое я могу придумать, является этим:

<% if (isDisabled) { %>
  <button name="btn1" disabled="disabled">Hello</button>
<% } else { %>
  <button name="btn1">Hello</button>
<% } %>
-2
ответ дан Marcus Downing 2 October 2008 в 17:49
поделиться
  • 1
    Спасибо за это. Я был не так разъяснен с данными ответами. и также я хотел бы сохранить этот вопрос на своей учетной записи так, чтобы я не спрашивал Google, и в то же время, это служит моим журналом (вид) о моем новом приобретении знаний..:) – CMA 22 May 2012 в 07:00

< % = скучный %> синтаксис не является легальным XML, необходимым для Документов JSP. У Вас есть 2 опции:

  1. Замена < % = (isDisabled)? "отключенный": "" % > с < jsp.expression> (isDisabled)? "отключенный": "" </jsp.expression>
  2. Использование Ядро taglib и EL (удостоверяются, isDisabled помещается в объем страницы) как так:
<c:choose>
  <c:when test="${isDisabled}">"disabled"</c:when>
  <c:otherwise>""</c:otherwise>
</c:choose>

Hope, которая помогает:)

0
ответ дан Eric Wendelin 2 October 2008 в 17:49
поделиться

Вы можете использовать тег для решения этой проблемы с использованием допустимого XML:

<jsp:text><![CDATA[<button name="btn1"]]></jsp:text>
    <c:if test="${isDisabled}"> disabled="disabled"</c:if>
    >
    Hello!
<jsp:text><![CDATA[</button>]]></jsp:text>

Это, очевидно, более многословно, чем некоторые другие решения. Но он полностью автономен : никаких пользовательских тегов не требуется. Кроме того, он легко масштабируется на столько атрибутов, сколько вам нужно.

8
ответ дан 30 November 2019 в 07:56
поделиться

Думаю, прошло некоторое время с момента последнего сообщения по этому поводу, но я столкнулся с той же проблемой с