获取具有特定类Javascript的表行的id
我需要获取表中选择了类的每一行的id值。我需要能够在javascript中做到这一点;不是jquery获取具有特定类Javascript的表行的id,javascript,html,Javascript,Html,我需要获取表中选择了类的每一行的id值。我需要能够在javascript中做到这一点;不是jquery <tr id="1" class="selected"></tr> <tr id="2"></tr> <tr id="3" class="selected"></tr> <tr id="4"></tr> 这将返回一个数组:[1,3] 感谢您的帮助。谢谢。这里有一个使用PureJS的解决方案。根
<tr id="1" class="selected"></tr>
<tr id="2"></tr>
<tr id="3" class="selected"></tr>
<tr id="4"></tr>
这将返回一个数组:[1,3]
感谢您的帮助。谢谢。这里有一个使用PureJS的解决方案。根本没有Jquery 已使用getElementsByClassName
var cont=document.getElementById(“容器”);
var array=cont.getElementsByClassName(“选定”);
对于(var i=0;i
asdasd
阿斯达斯达斯德
阿斯达斯达斯德
阿斯达斯达斯德
获取元素,转换为数组,提取ID。简单:
var elements = document.getElementsByClassName("selected");
var elements_array = [].slice.call(elements);
var ids = elements_array .map(function(element){ return element.id });
但在jQuery中更容易:
var ids = $(".selected").map(function(index, element){return element.id});
应该是这样的
var elements = document.getElementsByClassName("selected");
var idArray=[];
for (var i = 0, len = elements.length; i < len; i++) {
idArray.push(elements[i].attr('id'));
}
var elements=document.getElementsByClassName(“选定”);
var-idArray=[];
for(var i=0,len=elements.length;i
您可以使用querySelectorAll
获取所选元素:
var selected = document.querySelectorAll(".selected");
…然后,您可以通过应用Array#map
获取它们的id
s,即使selected
是NodeList
而不是数组:
var ids = Array.prototype.map.call(selected, function(element) {
return element.id;
});
一应俱全:
var ids = Array.prototype.map.call(document.querySelectorAll(".selected"), function(element) {
return element.id;
});
querySelectorAll
受到所有现代浏览器以及IE8的支持
Array.prototype.map
存在于所有现代浏览器中,并且可以在旧浏览器(如IE8)上轻松填充
如果您打算经常这样做,那么抓取映射到变量的副本就很方便了:
var map = Array.prototype.map;
// ...later...
var ids = map.call(document.querySelectorAll(".selected"), function(element) {
return element.id;
});
好吧,先试试看!如果只想使用javascript,为什么要用jQuery标记?看起来像selector
var-id=[].slice.call(document.querySelectorAll('.selected')).map(函数(x){return x.id;})代码>@adeneo:这是答案,伙计。但是不需要切片
:varids=Array.prototype.map.call(document.queryselectoral('.selected'),函数(element){return element.id;})代码>“更简单”,因为它是一行?一行,并且没有数组转换。我承认这只是我的观点,只有1000行jQuery使它更容易。哈哈,我可以将代码隐藏在函数中,这样看起来就更容易了。:)工作得很有魅力。谢谢