您好我在我的第n个孩子Jquery代码中使用变量时遇到了问题。我已多次尝试过它并没有奏效。数字1有效但变量和位置没有。我尝试过各种形式的('+position+')
,(' + position + ')
,('+(position)+')
。但是,没有一个有效......
var nextB = $('.nextButton');
$(nextB).click(function(){
var AA = 1;
var AB = 2;
var AC = 3;
var position = 4;
$('#tHacks tr:nth-child(1)').hide();
$('#tHacks tr:nth-child(AB)').hide();
$('#tHacks tr:nth-child(AC)').hide();
$('#tHacks tr:nth-child('+position+')').hide();
});
答案 0 :(得分:3)
正如评论中提到的@ j08691,您应该检查控制台是否有错误。 AB线可能会失败并停止执行该功能。看起来位置线是正确的,所以只需按照相同的方式进行AB和AC。
更新: @monkeyinsight注意到一个无关的问题......在我的示例代码中清理它。另外@Kay指出你可能想要使用AA而不是原版中的1,所以我也将其添加到解决方案中。
$('.nextButton').click(function(){
var AA = 1;
var AB = 2;
var AC = 3;
var position = 4;
$('#tHacks tr:nth-child('+AA+')').hide();
$('#tHacks tr:nth-child('+AB+')').hide();
$('#tHacks tr:nth-child('+AC+')').hide();
$('#tHacks tr:nth-child('+position+')').hide();
});
答案 1 :(得分:0)
考虑更改您的代码
$('#tHacks tr:nth-child('+position+')').hide();
到
$('#tHacks tr:nth-child(4)').hide();
您可以在浏览器的控制台窗口中运行此代码,看它是否有效。
可能会发生整数正在添加到字符串中,从而在代码中产生问题。或者可能发生在您的代码中引用的第n个孩子不存在。