#java #jsf #date #xhtml
#java #jsf #Дата #xhtml
Вопрос:
я получаю дату со стороны сервера, и как мне сравнить это в моем коде xhtml, чтобы, если она меньше сегодняшней даты, я отображал панель, в противном случае нет.
Комментарии:
1. один из способов сделать это — получить обе даты со стороны сервера и сравнить их в файле rendered=#{abc.todaydate abc.theDate}. Есть ли какой-либо способ, которым я могу сделать это с помощью javascript?
2. Поскольку вы сказали, что хотите отобразить компонент JSF, вам действительно нужно провести сравнение на стороне сервера ( Date.after(someOtherDate) выдаст вам логическое значение, которое вы можете использовать для этого). В противном случае «скрытый» компонент все равно будет виден (всегда можно использовать «Просмотр источника»), что создает проблему безопасности.
Ответ №1:
У вас может быть метод в вашем компоненте
class MyBean{
public boolean isDateBigger(){
//date comparissoin and return result
}
}
в XHTML
render="#{myBean.dateBigger}"
Обновить:
Согласно вашему комментарию, если вы хотите выполнить это с помощью javascript, то.
возьмите два скрытых параметра. Один текущий миллиметр, а другой, представляющий миллиметр вашей даты
сравните их с помощью javascript и примените стиль DIV visibility:hidden
, чтобы скрыть
Ответ №2:
попробуйте