Grails: отключить g: datePicker - PullRequest
0 голосов
/ 30 марта 2012

Как отключить g: datePicker при загрузке страницы?

Предполагается, что код отключает функцию datePicker, когда переменная (isCurrent) имеет значение true.

<g:if test="${!isCurrent}">
                    <g:datePicker name="endDate" precision="month" value="${projectInstance?.endDate}" years="${2005..2050}"/>
                </g:if>
                <g:else>
                    <g:datePicker name="endDate" precision="month" value="${projectInstance?.endDate}" years="${2005..2050}" disabled="disabled"/>
                </g:else>

Ответы [ 3 ]

0 голосов
/ 30 марта 2012

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

view.gsp

<g:datePicker disabled="${diabled}" .... />

controllerView.groovy

def view = {
disabled = true
if (isCurrent)
   disabled = false
[disabled, disabled]  
}

вышеописанный вызов javascript тоже хорошо работает

0 голосов
/ 31 марта 2012

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

0 голосов
/ 30 марта 2012

disabled="disabled" является атрибутом выбора, а не выбора даты. Datepicker не будет передавать этот атрибут вашим тегам выбора. Однако, что вы можете сделать, это отключить ваш выбор с помощью JavaScript. Например, если вы используете jQuery, вы можете сделать что-то вроде этого:

note : в моем примере isCurrent - это строка, соответственно изменяющая вашу. Поместите это в тело html после тега datepicker.

<script type="text/javascript">
    if ("${isCurrent}"=='true'){
       alert("${isCurrent}");
       $("#endDate_month").attr('disabled','disabled')
       $("#endDate_year").attr('disabled','disabled')               
    }
</script>

или просто используйте тег выбора напрямую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...