Показать сообщение отдельно
  #1 (permalink)  
Старый 21.02.2013, 15:00
Новичок на форуме
Отправить личное сообщение для colonel_337 Посмотреть профиль Найти все сообщения от colonel_337
 
Регистрация: 21.02.2013
Сообщений: 3

Форма смены пароля, password/text, показать все что скрыто
Здравствуйте дорогие жабаскриптеры!

Нужна ваша помощь. Есть форма смены пароля, чекбокс, что бы звездочки в инпутах поменять на символы.
Все работает, проблема не в этом. Проблема в том, что если я до введения паролей включаю форму "Показать пароль", то сам пароль показывается, но в POST запрос не передается.
Если я сначала ввожу данные, потом включаю показ - данные передаются.
Догадываюсь, что тут кака то маленькая хрень, но недостаток образования в jQuery делает свое черное дело.
Буду очень благодарен за помощь.

$content .= <<<HTML

 <form method="post"  name='exch'  action=''>
$lang[exchange_old_pass]:<input type='password' id='old_pass' name='old_pass'  />
$lang[exchange_new_pass]:<input type='password' id='pass' name='pass'  onblur="CheckReg('pass',this.value); return false;"/>

 <label><input type="checkbox"  id="show_pass">$lang[exchange_show]</label>
 <input  type='submit'   value="$lang[exchange_go]" name="go" />
 </form>
<script>

$('#show_pass').change(function() {
    var pass = $('#old_pass');
    var newpass = $('#pass');

    if (!pass.next().is('.pass-show') | !newpass.next().is('.pass-show')) {
        $('<input class="pass-show">').val(pass.val()).hide().insertAfter(pass);
        $('<input class="pass-show">').val(newpass.val()).hide().insertAfter(newpass);
    }

    if ($(this).is(':checked')) {
        pass.hide().next().show();
        newpass.hide().next().show();
    }
    else {
        pass.show().next().hide();
        newpass.show().next().hide();
    }
});
</script>

HTML;

Последний раз редактировалось colonel_337, 21.02.2013 в 16:03.
Ответить с цитированием