2009-10-01 5 views
1

before call protected void onSubmit() {, какой метод вызывается калитки? моя строка texfield loginName имеет значение NULL, но если я закрою браузер и перезапущу браузер и просмотрю страницу, я смогу увидеть, что в строке ввода текстового поля заполняется значение i, введенное в текстовое поле.apache wicket textfield null

>  <td class="label"><wicket:message 
> key="login.loginName"/></td> 
>       <td colspan="2"><input 
> wicket:id="loginName" size="35"/></td> 
+1

Это может помочь опубликовать вашу страницу и код формы + HTML – tddmonkey

+0

Мне кажется, что это произойдет только в ie8. firefox 3.5 без проблем – cometta

ответ

1

Возможно ли, что текстовое поле заполнено не Wicket, а вашим веб-браузером? Я говорю о универсально реализованной функции сохранения представленных значений (имя пользователя/пароли в частности/довольно агрессивно из того, что я помню) из форм (автозаполнение, я полагаю?).

Чтобы проверить, просмотрите источник сгенерированной страницы и посмотрите, есть ли значение по умолчанию. Если он там, то именно Wicket предварительно заполняет поле. Если его там нет, то, скорее всего, ваш веб-браузер будет заполнять поле, когда вы не смотрите. Где-то в настройках вашего веб-браузера есть способ очистить и/или отключить его внутреннюю функцию заполнения формы.

Кроме того, некоторые браузеры поддерживают атрибут autocomplete="off" в текстовых полях, который может предотвратить предварительное заполнение поля браузером.

+0

хорошо думаю. но я не думаю, что проблема – cometta

1

Если это не ваш браузер, заполняющий поле, то, скорее всего, модель, поддерживающая текстовое поле, имеет значение. Например. если вы заполняете свою форму пользовательским объектом, убедитесь, что User.getLoginName() возвращает значение null - в противном случае текстовое поле всегда будет заполнено содержимым объекта. Если это звучит сложно или ново для вас, обязательно поймите the concept of working with wicket models - это одна из важнейших частей рамки.

Смежные вопросы