jQuery:在加载页面时已经输入值时,向输入添加一个类

时间:2011-08-17 16:34:14

标签: jquery input load

我正在使用跟随jQuery代码来根据它们是否有焦点或者它们是否包含内容来设置一些输入的样式。

$('.Textbox')
.focus(function() { $(this).addClass("selected") })
.blur(function() { if ($(this)[0].value == '') { $(this).removeClass("selected") } });

我的问题是,如果用户是回访者,我的一些输入会自动由浏览器填写。例如,用户名和密码字段。由于输入中输入了一个值,我想以不同的方式设置它们的样式。不幸的是,在用户直接与输入交互之前,jQuery不会应用样式。

有什么方法可以查看输入是否有值(没有用户与输入交互)然后给它一个类名?

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

你可以在“页面加载”

上进行
$(document).ready( function () {
    $('.Textbox').each( function () {
        $this = $(this);
        if ( this.value != '' ) $this.addClass('yourClass');        
    });
});

答案 1 :(得分:0)

focus()blur()事件特定于用户互动。您应该在jQuery中尝试change()事件,因为当输入值发生更改时会触发该事件,即使该更改是由程序而不仅仅是用户触发的:http://api.jquery.com/change/