Javascript 使用jquery向class元素动态添加div id
在for循环内部,它始终采用相同的id,因为Javascript 使用jquery向class元素动态添加div id,javascript,jquery,css,Javascript,Jquery,Css,在for循环内部,它始终采用相同的id,因为$('.传单标记图标')。attr('id',x)是一个类。 任何人都可以建议如何向类添加唯一id。在for循环中使用:eq选择器 var length = $('.leaflet-marker-icon').length; for (var x = 0; x < length; x++) { $('.leaflet-marker-icon').attr('id', x); } 在for循环中使用:eq选择器 var length =
$('.传单标记图标')。attr('id',x)
是一个类。
任何人都可以建议如何向类添加唯一id。在for循环中使用
:eq
选择器
var length = $('.leaflet-marker-icon').length;
for (var x = 0; x < length; x++) {
$('.leaflet-marker-icon').attr('id', x);
}
在for循环中使用
:eq
选择器
var length = $('.leaflet-marker-icon').length;
for (var x = 0; x < length; x++) {
$('.leaflet-marker-icon').attr('id', x);
}
继续你的解决方案:(我不明白为什么人们试图展示他们所知道的而不纠正你) 试试这个:
$('.leaflet-marker-icon:eq(' + x + ')').attr('id', x);
var=$('.传单标记图标')//让我们缓存数组
变量长度=u2;长度//让我们缓存长度
对于(var x=0;x到继续您的解决方案:(我不明白为什么人们试图展示他们所知道的而不纠正您)
试试这个:
$('.leaflet-marker-icon:eq(' + x + ')').attr('id', x);
var=$('.传单标记图标');//让我们缓存数组
var length=\ u0.length;//让我们缓存长度
对于(var x=0;x您可以使用.each()
迭代元素,并使用元素上下文(this
)设置其属性值:
var _=$('.leaflet-marker-icon'); //let's cache the array
var length = _.length; //let's cache the length
for(var x=0; x<length; x++) {
_.eq(x).prop('id', x);
}
您可以使用.each()
迭代元素,并使用元素上下文(this
)设置其属性值:
var _=$('.leaflet-marker-icon'); //let's cache the array
var length = _.length; //let's cache the length
for(var x=0; x<length; x++) {
_.eq(x).prop('id', x);
}
您应该在动态添加div
s的同时添加id
,这将减少工作量。但如果您无法做到这一点,请尝试下面的代码
$('.leaflet-marker-icon').each(function(i){
this.id=i;
});
正如Royi Namir所建议的,下面是实现您的解决方案的另一种方法
var count = 1;
$('.leaflet-marker-icon').each(function(){
$(this).attr('id',count);
count++;
});
您应该在动态添加div
s的同时添加id
,这将减少工作量。但如果您无法做到这一点,请尝试下面的代码
$('.leaflet-marker-icon').each(function(i){
this.id=i;
});
正如Royi Namir所建议的,下面是实现您的解决方案的另一种方法
var count = 1;
$('.leaflet-marker-icon').each(function(){
$(this).attr('id',count);
count++;
});
创建一个变量并将其设置为零。使用,each()
函数,添加一个与该变量相等的id
属性,并将该变量增加1,以便分配给下一个元素
检查div元件的结果:
$(文档).ready(函数(){
//var i=0;
$('.传单标记图标')。每个(功能(i){
$(this.attr('id',i);
//i++;
});
});
1.
2.
3.
4
创建一个变量并将其设置为零。使用,each()
函数,添加一个与该变量相等的id
属性,并将该变量增加1,以便分配给下一个元素
检查div元件的结果:
$(文档).ready(函数(){
//var i=0;
$('.传单标记图标')。每个(功能(i){
$(this.attr('id',i);
//i++;
});
});
1.
2.
3.
4
由于选择器是类,因此您应该知道它返回一个集合。因此,在您的情况下,您可以使用以下选项:
$('.leaflet-marker-icon').each(function(i,n){
$(this).attr('id',i);
});
在使用jquery并为元素设置唯一ID时,可以使用.attr('attribute',fn)
$('.传单标记图标').attr('id',函数(i){
返回i;
});
传单标记-icon1
传单标记-icon2
传单标记-icon3
传单-marker-icon4
因为您的选择器是class,所以您应该知道它返回一个集合。因此在您的情况下,您可以使用以下选项:
$('.leaflet-marker-icon').each(function(i,n){
$(this).attr('id',i);
});
在使用jquery并为元素设置唯一ID时,可以使用.attr('attribute',fn)
$('.传单标记图标').attr('id',函数(i){
返回i;
});
传单标记-icon1
传单标记-icon2
传单标记-icon3
传单-marker-icon4
如何添加div,同时添加id。如何添加div,同时添加id。您可以使用函数(i,n)
是的,这是个好主意,这样我就不必保留额外变量。让我添加它来回答。感谢您的建议:)您可以使用函数(i,n)
是的,这是一个好主意,这样我就不必保留额外的变量。让我添加它来回答。感谢您的建议:)您可以使用函数(I,n)
您可以使用函数(I,n)
而无需对操作代码进行大量修改。回答得很好。\ eq(x).prop('id',x)代码>?@ArunPJohny tnx:-)x
在不修改操作代码的情况下达到了这一点。回答得很好。\ eq(x).prop('id',x)代码>?@ArunPJohny tnx:-)x