Я пытаюсь сбросить некоторые входные текстовые поля внутри таблицы данных, используя кнопку отмены. Проблема, с которой я столкнулся, заключается в том, что, если я пытаюсь отменить его, но есть ошибки проверки, это не позволяет мне сделать это, потому что сначала выполняется проверка, находит и выдает ошибку, и выводит ошибку до того, как она сможет воспроизвести себя.
Очевидное решение состоит в том, чтобы установить «немедленное = истинное» на кнопку. Это избавляет от проблемы и позволяет мне отменить без проверки, НО сами поля не установлены в свои первоначальные значения. Это связано с тем, что сами компоненты никогда не получают данные из базовых компонентов, ПОТОМУ ЧТО НЕМЕДЛЕННО установлено на true.
Это очень хорошо объяснено в этой статье: http://wiki.apache.org/myfaces/ClearInputComponents
В статье представлено много решений, но ни одно из них не работает для меня.
- Мне нужно остаться на той же странице, поэтому изменение представлений не вариант.
- Я не могу сбросить значения ВСЕХ полей ввода на странице, потому что я хочу, чтобы только «строка», которую я отменяю, была сброшена
Я не могу связать компоненты ни с одним из полей ввода, потому что, поскольку они находятся в базе данных, атрибут «binding» самого поля ввода не может ссылаться на переменную 'var'. Например, следующий атрибут «binding» недопустим и выдает ошибку:
Это может быть связано с тем, что 'var' является только областью запроса.
В любом случае, у кого-нибудь есть идеи, как заставить это работать?