jquery在输入单击时添加类,并在单击其他输入时删除类

时间:2014-02-05 16:18:20

标签: javascript jquery find toggleclass closest

当我点击输入时,我需要在输入包装器中添加一个类,并在单击其他输入时删除该类。

我已经开始使用toggleClass但只会在再次点击相同的输入时删除该类。

我尝试过使用函数:find()和nearest()但是无法确切地确定我需要哪个函数,或者他们调用的顺序是什么......任何帮助都会受到赞赏。

到目前为止,这是代码:

<div class="wrapper">
    <label for="name" class="required">
        name
    </label>
    <div class="data_area">
        <input type="text" id="" name="" value="" title="" class="" />
    </div>
</div>

<div class="wrapper">
    <label for="other name" class="required">
        last name
    </label>
    <div class="data_area">
        <input type="text" id="" name="" value="" title="" class="" />
    </div>
</div>


<script>
    $('.wrapper input').click(function () {
        $(this).parent().addClass('red');
    });
</script>

<style>
.red {background:red;}
</style>

1 个答案:

答案 0 :(得分:9)

我认为你所寻找的是焦点/模糊,而非点击

$('.wrapper input').focus(function () {
    $(this).parent().addClass('red');
}).blur(function () {
    $(this).parent().removeClass('red');
});

演示:Fiddle

如果您仍想点击try this