Ajax формы входа, работающие с функциями запоминания пароля браузера - PullRequest
0 голосов
/ 30 июня 2011

У меня есть форма входа на основе ajax для моего сайта, и я заметил, что браузеры не распознают ее как форму входа и не запоминают пароли для нее, чтобы упростить вход пользователя.

Когда кнопка отправкинажал значения и отправил на сервер для проверки и ответ отправили обратно.Если проверка проходит, сеанс установлен, и страница выполняет перенаправление JavaScript в область участников.HTML-код очень прост и может стать причиной проблемы.

HTML:

<input type='text' class='email'>
<input type='password' class='password'>
<a class='submitBtn'>SUBMIT</a>

Спасибо, ребята!

Ответы [ 2 ]

2 голосов
/ 30 июня 2011

Я думаю, что сделаю это по-другому.

Использование формы для отправки в скрытый iframe, поэтому окно будет работать как сообщение ajax (не обновлять окно) и функция запоминания паролябудет работать

как

    <form method="post" id="" action="checkDetail.php" target="myIframe">

        <input type='text' class='email'>
        <input type='password' class='password'>
        <input type="submit" name="" value="" id="Submit"/>
    </form>
    <iframe name="myIframe" id="myIframe"></iframe>

таким образом, вам придется немного изменить код ответа, чтобы заметить, если родительский фрейм подтвердит результат отправки.

это будет сделано автоматически браузером.Если в форме указан атрибут 'target', а в iframe есть атрибут name, который точно совпадает с атрибутом target формы, действие формы будет отправлено в iframe.

, поэтому, когда ваш запросУспешно, ваш ответ появится в содержании iframe.Попробуйте код, подобный этому, в ответе.

<?php
//php checks database here
?>

<script>
    parent.formSuccess({
        //your response infomation
    });
</script>

и определите метод formSuccess на внешней странице для обработки обратного вызова отправки

0 голосов
/ 01 июля 2011

Найден ответ в стеке: Как получить запрос браузера на сохранение пароля?

Моя версия:

<form id='loginForm' target="passwordIframe" method='POST' action="blank.php">
<input name='email' type='text' st='Email'>
<input name='pass' type='password' st='Password'>
<button type='submit'>LOGIN</button>    
</form>
<iframe id="passwordIframe" name="passwordIframe" style='display:none'></iframe>

Iможет подтвердить, что это запускает функции запоминания пароля для Chrome (другие браузеры еще не протестированы).Важно, что атрибут действия указывает на blank.php.Я выбрал пустую страницу php и повторил массив $_POST, чтобы убедиться, что значения были отправлены через форму.

Теперь я реализую это с моим старым кодом, который просто использует javascript длязначения вне поля и проверяет их с помощью вызова ajax.Интересно, смогу ли я покончить с кнопкой отправки все вместе и просто использовать javascript для отправки формы?

...