get id以给定字符串数组中的任何字符串结尾

时间:2012-12-13 10:06:46

标签: jquery

我找到一个link来获取以特定字符串结尾的id。

  $("element[id$='txtTitle']")

如果结尾字符串很多,我们怎样才能得到id。就像我有一个字符串数组,并希望所有id都以这些字符串中的任何一个结束。

感谢的

4 个答案:

答案 0 :(得分:3)

您可以将选择器与不同的endings组合使用逗号。

$("element[id$='txtTitle1'],  element[id$='txtTitle2'])")

当你有不同的结尾和相同的start使用start。

$("element[id^='txtTitle']")

当您有一些文字common但不确定它是否处于开始或结束或中间使用时*

 $("element[id*='txtTitle']")

答案 1 :(得分:1)

如果你有一个包含id结尾的字符串数组,你可以遍历它们并将它们添加到集合中。试试这个:

var $elements = $(); // empty jQuery object
var ids = ["txtTitle", "txtFirstname", "txtLastName"];
$.each(ids, function(index, value) {
    $elements.add("element[id$='" + value + "']");
});

// $elements is now a collection you can use eg:
$elements.css("background-color", "#C00");

答案 2 :(得分:0)

首先构建选择器:

var endings = ["a","b","c"];
var selector = "";

for(var i = 0, len = endings.length; i < len; i++) {
   selector += "element[id$='" + endings[i] + "']";

   if (i != (endings.length - 1)) selector += ",";
}

然后进行选择:

var el = $(selector);

答案 3 :(得分:0)

所以你有一系列的结局

var arr = ["ending1","ending2"];

您可以使用jquery .map()函数构建多重选择器(以逗号分隔)

var selector = $.map(arr,function(i,e){return "element[id$='" + e + "']";})
                .join(",");
// result: "element[id$='ending1'],element[id$='ending2']"

然后使用选择器:

var $elements = $(selector);