2017-01-15 7 views
1

Я знаю, что некоторые сообщения похожи на эту страницу на странице, но ни один из опубликованных ответов не работал для меня. У меня есть форма входа в систему с jsf, и я использую ajax для перезагрузки панели в зависимости от атрибутов пользователя после входа в систему. У меня две проблемы: Первая проблема заключается в том, что я не могу заставить мой браузер запрашивать пароль. Я читал, что если вы используете ajax для соображений безопасности, браузеры не хранят пароль, это любой способ заставить это? или любое обходное решение? Проблема две (я думаю, проще) Я хочу выполнить кнопку на клавише ввода. Это моя форма:Хранить пользователя/пароль с JSF и AJAX

<h:form id="formLogin"> 
     <h:panelGroup id="pgLogin" layout="block"> 
      <h:panelGroup id="panel1" rendered="#{empty login.sessionUsuario}" layout="block"> 
       <h:inputText type="text" id="userLogin" value="#{login.usuario}" autocomplete="on"> 
       </h:inputText> 
       <h:message for="userLogin" class="error"/> 
       <h:inputSecret type="password" id="passwordLogin" value="#{login.password}" autocomplete="on"> 
       </h:inputSecret> 
       <f:ajax render="pgLogin loginOK" execute="@form" > 
        <h:commandLink id="btlogin" action="#{login.iniciarSesion}"> 
         <button type="button" id="logIn">Log In</button> 
        </h:commandLink> 
       </f:ajax> 
      </h:panelGroup> 
     </h:panelGroup> 
    </h:form> 
+0

Интересно: http://stackoverflow.com/questions/14126672/jsf-resets-fields-when-doing-an-ajax-update – Omar

ответ

0

Я предполагаю, что вы хотите, чтобы вызвать кнопку отправки либо из полей ввода. Добавить этот скрипт на страницу:

<script> 
    var triggerSubmit = function(event){ 
     if (event.keyCode == 13) { 
      document.getElementById('btlogin').click(); 
     } 
    }; 

    document.getElementById('userLogin') 
     .addEventListener('keypress', triggerSubmit); 

    document.getElementById('passwordLogin') 
     .addEventListener('keypress', triggerSubmit); 
</script> 
+0

Любая удача с тестированием? Это сработало для вас? –