每个人都知道在 jQuery 中,按属性选择是这样的:
var abc =$('input[name=iphone]');
就我而言,我有一个数组。我想在我的数组中选择属性匹配值的元素。
像这样的东西:
var abc =$('input[name in (my_array)]');
你明白我的意思
每个人都知道在 jQuery 中,按属性选择是这样的:
var abc =$('input[name=iphone]');
就我而言,我有一个数组。我想在我的数组中选择属性匹配值的元素。
像这样的东西:
var abc =$('input[name in (my_array)]');
你明白我的意思
你可以从你的数组中建立一个多重选择器:
var arraySelector = $.map(my_array,
function (item) {
return "input[name=" + item + "]";
}).join(",");
var abc = $(arraySelector);
您将不得不像这样处理它:
var collection = [];
$("input[name]").each(function () {
if($.inArray($(this).attr("name"), yourArray)) {
collection.push($(this));
}
});
选择的答案很接近,但有一个问题:$.inArray 返回数组中值的索引,如果不存在则返回 -1。所以我会将答案编辑为:
var collection = [];
$("input[name]").each(function () {
if($.inArray($(this).attr("name"), yourArray) != -1) {
collection.push($(this));
}
});
var my_array = [ /* array of names */ ];
var abc = $('input').filter( function(){
return (my_array.indexOf( this.name ) > -1);
});
你应该在数组的长度上运行一个循环
var abc="";
for(var i=0;i<my_array.length;i++){
abc=$('input[name =+my_array[i]]');
}