Как применить селектор JQuery к Wicket ModalWindow - PullRequest
2 голосов
/ 03 июня 2011

Я использую один из самых новых JQuery-хаков типа show-your-password-single-char, который я могу применить ко всем полям моих паролей на странице с

<script type="text/javascript">
  $(document).ready( function() {
    $('input:password').dPassword();
  });
</script>

Но мой пароль для сменыдиалоговое окно отображается в Wicket ModalWindow,

final ModalWindow window = new ModalWindow("change-password-panel");
final PasswordChangePanel panel = new PasswordChangePanel(window, myPasswordValidator);
window.setContent(panel);
add(window);
add(new AjaxFallbackLink<String>("change-password") {
    @Override public void onClick(AjaxRequestTarget target) {
        window.show(target);
    }});

, поэтому его нет в document.ready.

Как мне организовать повторный запуск селектора JQuery, когда мое ModalWindow былопоказали?

1 Ответ

5 голосов
/ 03 июня 2011

Попробуйте отправить обратно JS для запуска после завершения вызова AJAX:

add(new AjaxFallbackLink<String>("change-password") {
    @Override 
    public void onClick(AjaxRequestTarget target) {
        target.appendJavascript("$('input:password').dPassword();")
        window.show(target);
    }
});

Лучше ограничить область действия селектора только вашим модальным окном, но мне нужно увидеть кодчтобы быть в состоянии сделать это.;)

...