JQUERY如何选择项目

时间:2012-02-10 01:53:34

标签: javascript jquery

我需要选择一些项目并检查值是否为空,并隐藏previus项目......但不能正常工作....

例如:

<script>
    if($('input[type=text],input[type=email],input[type=password]').val() != ""){
    $(this). prev().hide();
    }
</script>

<div class="prova"></div>
<input type="text">

<div class="prova"></div>
<input type="text">

<div class="prova"></div>
<input type="text">

当我为每个输入加载页面时,不要隐藏....有人可以帮助我吗?

3 个答案:

答案 0 :(得分:2)

当您在一组匹配元素上调用call val()方法时,它会获取匹配元素集中第一个元素的当前值。因此,您应该运行循环检查每个元素的值,然后隐藏前一个元素。试试这个。

$('input[type]').each(function(){
   if($(this).val()){
      $(this).prev().hide();
   }
});

如果有值,则必须显示前一个元素,然后您可以使用此脚本。

$('input[type]').each(function(){
    $(this).prev().toggle($(this).val() == '');
});

.toggle(showOrHide) - 根据布尔输入显示或隐藏元素。

答案 1 :(得分:1)

你想这样做:

$(':input').each(function() {
  if ($(this).val() != "") {
    $(this).prev().hide();
  }
});

答案 2 :(得分:0)

您可以将功能传递给.val()

var inputs = $('input[type=text],input[type=email],input[type=password]');

inputs.val(function(i,curr_val){
    if( curr_val )
        $(this).prev('.prova').hide();
    return curr_val;
});