Как добавить класс для метки формы, определенной в cakephp, а затем добавить событие jquery - PullRequest
0 голосов
/ 30 сентября 2011

Я создал форму в cakephp

<?php echo $form->create('User', array('action' => 'login'));?>
        <?php
          echo '<div class="loginbox">';
          echo '<table width="200" border="0">';
          echo '<tr>';
          echo '<td>';
          echo $form->input('username', array('label' => __('Username', true)));
          echo '</td>';
          echo '<td>';
          echo $form->input('password', array('label' => __('Password', true))); 
          echo '</td>';             
          echo '<td>';
          echo $form->end('Login');
          echo '</td>';
          echo '</tr>';
          echo '</table>';
          echo '</div>';
        ?>

Я хочу добавить класс для метки и после этого добавить событие фокуса jquery, чтобы во входных данных для имени пользователя появлялось текстовое имя пользователя, а при нажатии в области ввода текст исчезал. Как заставить это работать?

1 Ответ

0 голосов
/ 30 сентября 2011

Я бы просто привязал фокус и размытие событий к вашим входам. Для каждого ввода создайте атрибут заголовка в качестве текста по умолчанию, если он пуст:

<script type='text/javascript'>
jQuery(document).ready(function() { 
    $(".forminput").focus(function() {
        if ($(this).val() == $(this)[0].title) {
            $(this).removeClass("active");
            $(this).val("");
        }
    });
    $(".forminput").blur(function() {
        if ($(this).val() == "") {
            $(this).addClass("active");
            $(this).val($(this)[0].title);
        }
    });
    $(".forminput").blur();
});
</script>

<input value="" title="Enter a username" name="screenname" type="text" class="forminput" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...