Jquery:not selector不适用于类

时间:2017-02-26 07:39:12

标签: javascript jquery html css django

我正在尝试为我的网站制作产品页面,遗憾的是我没有使用Javascript来隐藏除特定页面之外的任何其他显示。

首先,我在单div中每隔24 div包裹一次:

var lis = $(".products li");
for(var i = 0; i < lis.length; i+=24) {
  lis.slice(i, i+24)
     .wrapAll("<div class='products'></div>");
}

然后我给了课堂上的每个对象,它是id:

$('.products').each(function(i, obj) {
    if (i > 0) {
       obj.id = "p" + i
    }
});

我已经测试过它是否可行,而且确实有效。

之后,我发出G​​ET请求,以便用户选择页面。

{{ currentpagen }}是GET请求的值,例如,在这种情况下,1

然后我添加了代码,因此除了当前第一页外,所有其他div都将被隐藏:

   $(".products:not(#p + {{ currentpagen }})").css("display", "none"); 
   $('#p' + {{ currentpagen }}).css("display", "flex");

并且它不起作用,所有元素都将被隐藏,包括一个不应该被想法隐藏的元素,例如,除了#p1之外,所有元素都应该被隐藏,除了:not

那么问题是什么呢?有没有更好的方法来做到这一点?自从我尝试改变他们的风格后,我的工作显然很有效,但我认为这是ImageView wView = new ImageView(this); ((ViewGroup.LayoutParams)(wView.getLayoutParams())).width = 200; ((ViewGroup.LayoutParams)(wView.getLayoutParams())).height = 200; 选择器的一部分。

如果你想知道双花括号是什么,它在Django中用于将变量从System移动到HTML,所以每当我得到GET请求的值时,我都会将变量传递给HTML,然后将它用于双卷曲大括号{{}}。

1 个答案:

答案 0 :(得分:1)

您应该注意您的模板系统使用JavaScript代码执行的操作。

恕我直言,这可能会更好:

$(".products:not(#p" + {{ currentpagen }} + ")").css("display", "none"); 

结果应该是这样的:

enter image description here