从选择器数组中检索选择器ID

时间:2014-05-08 13:10:59

标签: jquery arrays

在下面的代码片段中,我得到一个带有data_table类的选择器数组。

我正在尝试获取每个选择器的id,现在我发布的我可能会在数组语句中获取,但无论如何我无法获得正确的语法来查找数组对象的id。数组DOES包含正确的项目。

var pageName = GetCurrentPageName(true);
var datatables = $(".data_table").toArray();
var arrayLength = datatables.length;
for (var i = 0; i < arrayLength; i++) {
    ' errs here, with no .val or with .text or with childNodes[0].data() which is what i see in dev tools
    var tableId = datatables[i].attr('id').val();
    alert(tableId);
    var searchString = 'webpagename[name ="' + pageName + '"] > tableid[id ="' + tableId + '"]';
}

2 个答案:

答案 0 :(得分:0)

您使用的jQuery术语有点无关紧要。但我得到了你需要的东西。

请查看这个小提琴http://jsfiddle.net/u2LhW/

样品:

var divs = $('div.clsdiv');
    var ids = [];
    $.each(divs,function(i,val){
        ids.push($(val).attr('id'));
        console.log($(val).attr('id'));
    });

答案 1 :(得分:0)

请尝试使用.each()

var pageName = GetCurrentPageName(true);

$(".data_table").each(function(){
    var searchString = 'webpagename[name ="' + pageName + '"] > tableid[id ="' + this.id + '"]';
});

请注意,searchString循环之外无法访问.each()。如果你需要在循环之外使用它,那么考虑使用类似于Dhanasekar S M在答案中提出的内容。