检查何时填写输入类型文本

时间:2011-11-02 08:28:07

标签: javascript jquery forms css3

我有一个包含输入类型文本的表单。像这样:

<input type="text" placeholder="Voornaam" class="required" title="Voornaam" id="ctl00_ContentPlaceHolder1_tbFirstName" maxlength="255" value="Mike" name="ctl00$ContentPlaceHolder1$tbFirstName">

但现在我的问题。通常,文本字段中的文本为灰色。但是当你完成了一个领域。颜色必须是黑色。我如何用javascript检查这个?

由于

5 个答案:

答案 0 :(得分:3)

我认为你的意思是我们只有在用户完成写作时才需要色域.... 如果是,则需要使用此算法:

$('#ctl00_ContentPlaceHolder1_tbFirstName').blur(function () {
    var self = $(this);
    if (self.val() != "") {
        self.css('color','black'); // Set black fore color
    }
    else {
        self.css('color','gray'); // Restore code
    }
});

答案 1 :(得分:2)

当用户输入内容并且光标移出文本字段时,您可以使用jquery中的.change函数将颜色更改为黑色。

例如:

$("input[type='text']").change(function(){

    $(this).css('color', 'black');
});

答案 2 :(得分:0)

<input type="text" onblur="changeColor()" placeholder="Voornaam" 
 class="required" title="Voornaam" id="ctl00_ContentPlaceHolder1_tbFirstName" 
 maxlength="255" value="Mike" name="ctl00$ContentPlaceHolder1$tbFirstName">

定义你的changeColor()函数,它将改变文本框中文本的颜色。

答案 3 :(得分:0)

如果您离开输入字段(模糊时),则会触发更改事件。如果您想使用keyup事件进行即时检查:

$('#ctl00_ContentPlaceHolder1_tbFirstName').bind('keyup', function(){
  if (someconditionistrue) $(this).css('color','black');
});

使用ID选择器比属性选择器

更快

答案 4 :(得分:0)

这会将此规则应用于具有所需类的所有元素。

$('.required').blur(function () {
    if ($(this).val().trim().length == 0) 
        $(this).css('color','black');
    else 
        $(this).css('color','gray');
  });