1

我想隐藏一个class当一个value is not = 1

   (function ($) {
     $(document).ready(function () {
          if (!$('.class1').value='1') {
             $('.class2').css("display","none");;
         });
     });
 }(jQuery));

但它不工作......

4

7 回答 7

2

你可以这样做:

(function( $ ) {
  $(document).ready(function () {
    if ( $('.class1').val() !== "1" ) {
      $('.class2').hide();
    }
  });
 })( jQuery );
于 2013-06-04T11:31:08.803 回答
0

尝试

jQuery(function ($) {
    if ($('.class1').val() != '1') {
        $('.class2').css("display","none");;
    };
});
于 2013-06-04T11:32:05.207 回答
0

尝试以下语法:

  $('.class1').val() != '1'
于 2013-06-04T11:32:14.553 回答
0

$('.class1')将产生对包装零个或多个元素的 jQuery 对象的引用。它不会是对 DOMNode 的引用。那时您无权访问任何名为value. 有一个被调用的函数val将产生与选择器匹配的第一个元素的值(如果有的话)。

if($('.class1').val() != '1') {
    $('.class2').hide();
}

此外,您正在尝试使用=来检查是否相等,但=仅用于分配。你应该==在条件下使用。现在您正在寻找相等的倒数,您不应该使用!X==Ybut X!=Y

于 2013-06-04T11:32:40.757 回答
0
$('.class2').toggle( $('.class1').val().trim() != '1' );

小提琴

于 2013-06-04T11:32:53.913 回答
0

你可以这样做:

$(document).ready(function () {
  if ( $('.class1').val() != "1" ) {
    $('.class2').attr('style','display:none;');
  }
});
于 2013-06-04T11:33:18.230 回答
0

您的问题在这里是单一=的:

if (!$('.class1').value='1')

您可以更改为=====

if (!$('.class1').value === '1')

或者这样:

if ($('.class1').value !== '1')
于 2013-06-04T11:38:26.507 回答