Поддельная страница входа в систему с помощью jQuery - PullRequest
0 голосов
/ 24 июня 2011

Я пытаюсь создать поддельную страницу входа в систему с помощью jQuery - исключительно для целей тестирования / представления шаблона.

Какую форму следует делать (см. Подробности в коде .js):

Правильный адрес электронной почты: admin@admin.com / pass: admin

  • проверьте значения #username & #password по сравнению со значениями в .js
  • , если оба значения возвращают true, предупреждают 'valid' и переходите к home.html
  • , если предупреждение не действительное'недопустимо' и выдает ошибку msg

Код в jsfiddle http://jsfiddle.net/MrTest/ZYZPY/

HTML

<form class="loginbox" autocomplete="off">
    <fieldset>
        <p style="display: none;" class="error">Error. Please enter correct email &amp; password.</p>
        <label for="username">E-mail</label>
        <input type="text" id="username" />
        <label for="username">Password</label>
        <input type="password" id="password" />
        <input type="submit" id="submit" value="LOG IN" />
    </fieldset>
</form>

jQuery

$(document).ready(function() {
    $('#username').focus();

    $('#submit').click(function() {

        event.preventDefault(); // prevent PageReLoad
        $('.error').css('display', 'none'); // hide error msg

        var ValEmail = $('#username').val('admin@admin.com'); // Email Value
        var ValPassword = $('#password').val('admin'); // Password Value

        if (ValEmail === true & ValPassword === true) { // if ValEmail & ValPass are as above
            alert('valid!'); // alert valid!
            window.location = "home.html"; // go to home.html
        }
        else {
            alert('not valid!'); // alert not valid!
            $('.error').css('display', 'block'); // show error msg
        }
    });
});

В данный момент форма всегда возвращает else = false - почему ??

Любая помощь высоко ценится!Пит


Рабочий пример: http://jsfiddle.net/MrTest/ZYZPY/12/

Ответы [ 3 ]

9 голосов
/ 24 июня 2011
if (ValEmail === true & ValPassword === true) {

Должно быть && вместо &
И val используется для получения значения ввода, необходимо:

var ValidEmail = $('#username').val() === 'admin@admin.com'; // Email validate
var ValidPassword = $('#password').val() === 'admin'; // Password validate

if (ValidEmail === true && ValidPassword === true) { // if ValidEmail & ValidPassword  

Рабочая скрипка: http://jsfiddle.net/DTGt9/

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

используйте что-то вроде: val с параметром установит значение

var ValEmail = $('#username').val()=='admin@admin.com';
var ValPassword = $('#password').val()=='admin';

Также оператор && вместо & как уже упоминалось

Также я вижу, что событие не определено .?

0 голосов
/ 26 июня 2013

Событие не определено.

Его необходимо передать с помощью метода события Click.

Пример:

$('#submit').click(function(event) {
    event.preventDefault();   });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...