Условный HTML нужен совет

Что будет лучше в этих 2 случаях. Просто убедитесь, что я использую лучшие практики.

<% if(isEdit){ %>
<input type="text" id="tabtitle" name="title" value=<%=Content%>/>
<%}else{%>
<input type="text" id="title" name="title"/>
<%}%>

ИЛИ ЖЕ

 $(document).ready(function() { 
<% if(isEdit){ %>
   $("#title").val("<%=Content%>");
<%}%>
});

4 ответа

Решение

Второй использует JavaScript / JQuery для изменения элемента. Поскольку добавление кода на стороне клиента не имеет преимуществ, я бы выбрал первый подход, который относится только к стороне сервера. Хотя, не видя более широкой картины, этот подход особенно трудно поддержать.

Я бы выбрал первый подход, потому что в любом случае есть условие, и javascript ничего не добавляет к функциональности. Это просто принудительный подход.

Кроме того, если вы используете серверную часть, ваш код будет корректным в тот момент, когда он попадет в браузер, и не будет никаких задержек при вызове функции javacsript. Иногда есть вспышка или вайп, когда вы меняете дом через javascript... Вам будет лучше без него.

Я бы согласился с предложением Пойнти и использовал язык выражений (EL) в вашем JSP. Вы могли бы просто поставить:

<input type="text" id="${titleid}" name="title" value="${Content}"/>

Установите для свойства titleid значение "title" или "tabtitle", а для Content - "" или свой контент. Я не проверял это, но я верю, что это могло бы сделать то же самое.

Я предпочитаю первый подход, поскольку Javascript обычно отключается некоторыми пользователями по соображениям безопасности

Другие вопросы по тегам