我需要一个循环的帮助......它可能很简单,但我很难编码它。Javascript/jQuery Id检查驱动器编号功能与验证
基本上,我需要检查现有的ID号码,以便我可以使用不同的号码创建唯一的ID。它们的命名方式如下:id =“poly'+ i'”按我的函数顺序排列,其中i等于现有元素的数量。例如:Array 1,Array 2,Array 3对应于i = 1用于创建Array 1,i = 2用于Array 2等。
现在我基于现有元素的总数,而我的“CreateNew”函数被关闭x = i + 1(所以上面的例子中,新元素将被命名为Array 4)。问题是,如果删除中间数字中的一个,“创建”功能将复制高数字。即阵列1,2,3删除2,创建新的 - >阵列1,3,3.
我需要一个if()语句来检查数组是否已经存在然后for()循环遍历所有我的直到它证实。不知道如何编码。
我试图纠正代码如下(注意:我最初没有写这篇文章,我只是想用我的最小JS技能加以纠正):
function NewPanel() {
var i = numberOfPanels.toString();
var x = (parseInt(i)+1).toString();
$('#items').append('<div onclick="polygonNameSelected(event)" class="polygonName" id="poly'+i+'"> Array '+ x +' <a href="javascript:void(0)" onclick="removePolygon('+i+');return false;"> </a></div>');
$('div[id*=poly]').removeClass('selected');
$('#poly'+i).addClass('selected');
$('#poly'+i).click(function() {
selectedPolygon = i;
$('div[id*=poly]').removeClass('selected');
$(this).addClass('selected');
});
}
THANK YOU! :)
UI上有一个单独的功能,允许用户“删除”阵列。你的解决方案是有道理的,除了例如当你有[1,2,3,4,5]的数组1和2的情况,并且从数组1中删除除1之外的所有数据。你只需要创建一个带有值的标识= 2,从而导致相同的id重复问题。 –
因为它是一个简单的修复程序,所以会进行测试。 –