Когда моя страница загружена, я выполняю следующий JS-скрипт, который я использую для отображения всплывающего сообщения (пожалуйста, подождите ...) при отправке любой формы.
jQuery(function(){
jQuery("form").submit(function(){jQuery('#wait-link').trigger('click');return true;});
});
Это прекрасно работает при использовании h: commandButton , однако, когда я использую тег h: commandLink , он не работает, потому что форма отправляется с помощью java-скрипта (из файла jsf.js в jar jsf-impl.jar), как показано ниже
mojarra.jsfcljs = function jsfcljs(f, pvp, t) {
mojarra.apf(f, pvp);
var ft = f.target;
if (t) {
f.target = t;
}
f.submit();
f.target = ft;
mojarra.dpf(f);
};
Чтобы решить эту проблему, я скопировал файл jsf.js в WEB-INF / resources / javax.faces / jsf.js и изменил его, чтобы вызвать метод отправки формы с использованием jQuery.Это прекрасно работает, но:
1) Мне не нравится тот факт, что я касаюсь файла jsf.js , поскольку он может измениться в более новых выпусках JSF.
2) Мне не нравится тот факт, что я использую jQuery внутри файла jsf.js .
Есть ли лучшее решение для решения этой проблемы?