如何为cakephp中定义的表单标签添加类,然后添加jquery事件

时间:2011-09-30 12:05:46

标签: javascript cakephp

我在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 :(得分:0)

我只是将焦点和模糊事件绑定到您的输入。对于每个输入,当输入为空时,将title属性创建为默认文本:

<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" />