Javascript Jquery,获取ID为'的所有元素的ID字符串列表;那是什么;以“开始”;一根绳子?

Javascript Jquery,获取ID为'的所有元素的ID字符串列表;那是什么;以“开始”;一根绳子?,javascript,jquery,element,Javascript,Jquery,Element,我不是Javascript大师,因为我做更多的服务器端工作,所以我很难做到这一点。我已经找到了如何做到这一点的点点滴滴。基本上,我有一系列的元素,它们的id以字符串“tagRow_”开头,我需要返回所有实际元素id的列表,因为我不仅需要元素,还需要元素的id,因为我需要在服务器端解析每个元素的唯一结尾,以确定它对应的内容 我发现下面的代码可以获取所有元素,但不确定它返回的是列表还是什么,如果有人能提供如何仅返回字符串id名称列表的建议,我将不胜感激。谢谢 EDIT:我实际上需要用一个无线电输入字

我不是Javascript大师,因为我做更多的服务器端工作,所以我很难做到这一点。我已经找到了如何做到这一点的点点滴滴。基本上,我有一系列的元素,它们的id以字符串“tagRow_”开头,我需要返回所有实际元素id的列表,因为我不仅需要元素,还需要元素的id,因为我需要在服务器端解析每个元素的唯一结尾,以确定它对应的内容

我发现下面的代码可以获取所有元素,但不确定它返回的是列表还是什么,如果有人能提供如何仅返回字符串id名称列表的建议,我将不胜感激。谢谢

EDIT:我实际上需要用一个无线电输入字段来完成这项工作,因为我在自己的示例中错放了一个DIV。它对DIV工作正常,但对如下收音机输入不正常:

 <input id="tagRow_ddd" type="radio" value="h">
                <input id="tagRow_ddd" type="radio" value="p">
                    <input id="tagRow_ddd" type="radio" value="r">
                    <input id="tagRow_ddd" type="radio" value="c">

$("input[id^='tagRow_']").each(function() {

   var id = this.id,
       idNumber = id.replace(/\D+/, '');
   document.body.innerHTML += idNumber + '<br />';
});

$(“输入[id^='tagRow'])。每个(函数(){
var id=this.id,
idNumber=id.replace(/\D+/,“”);
document.body.innerHTML+=idNumber+'
'; });

例如:

$("div[id^='tagRow_']").each(function() {    
    alert(this.id);
});

您也可以在客户端获取该号码

$("div[id^='tagRow_']").each(function() {

   var id = this.id,
       idNumber = id.replace(/\D+/, '');

   // idNumber contains the digits that were in the id

});
.

var elements = [];

$("div[id^='tagRow_']").each(function(){
   elements.push(this.id); 
});

var stringOfElementIDs = elements.toString();

这将返回匹配DOM元素的列表(作为jQuery对象)。因此,您必须循环遍历它,并将ID放在一个单独的数组中

var matching_els = $("div[id^='tagRow_']"), ids = [];
for(var i=0; i<matching_els.length; i++){
  ids.push(matching_els[i].attr("id");
}
// send ids back to server
var-matching_-els=$(“div[id^='tagRow']),ids=[];
对于(var i=0;i请尝试以下操作:

var ids = $("div[id^='tagRow_']").map(function() {
    return this.id;
}).get();

这将返回一个包含所有ID的数组。本文提供的更多信息:.

叹气..我总是忘记map!无论如何,这是提供的最优雅的解决方案。ARH!!在$(elem).map(callback(index,domeElement))和jQuery.map(array,callback(elementOfArray,indexInArray)):在$(elem).map()页面上[api.jquery.com/map/]它说:“通过一个函数传递当前匹配集中的每个元素,生成一个包含返回值的新jquery对象。[…]如果您希望处理普通数组或对象,请使用jquery.map()。+1我更喜欢这种解决方案,因为您不使用闭包来获取id。
const-id=$('[id]')。get().map(elem=>elem.id);
在.attr(“id”)之后缺少一个)实际上我正在尝试使用一个输入字段,我在OP中犯了一个错误,出于某种原因,它似乎与DIV@Rick试着用这个来寻找数字,这样如果你把ddd放在末尾,它就找不到数字了,所以我在小提琴里把ddd改成了数字。
var ids = $("div[id^='tagRow_']").map(function() {
    return this.id;
}).get();