Jquery 函数返回选择器而不是值
这将返回Jquery 函数返回选择器而不是值,jquery,jquery-selectors,Jquery,Jquery Selectors,这将返回$id,而不是其值。我做错了什么?如果您只想检索数据提供id属性的值,您可以使用jQuery.each()循环通过元素 下面将输出从1到6的ID: var _el = $('ul').find('li'); var _id = _el.each(function() { var ids = {}; $($(this).data('offer-id')).each(function() { if (this !== '') { i
$id
,而不是其值。我做错了什么?如果您只想检索数据提供id
属性的值,您可以使用jQuery.each()
循环通过元素
下面将输出从1到6的ID:
var _el = $('ul').find('li');
var _id = _el.each(function() {
var ids = {};
$($(this).data('offer-id')).each(function() {
if (this !== '') {
ids[this] = this;
}
});
var $id = Object.keys(id);
var $id_ = $id.toString();
return $id;
});
console.log(_id);
如果您想将其放在数组中,只需将数据属性值推送到循环中即可
下面将输出[1,2,3,4,5,6]
$('li').each(function() {
console.log($(this).data('offer-id'));
});
希望这能有所帮助。我想您是在寻找.map()而不是.each()。循环中变量id
(Object.keys(id)
)的值是多少?-不应该是ids
不确定要做什么,但代码看起来不正确<代码>这个!==''代码>?,ids[this]=this
?,$($(this)
?当我使用map时,我得到的是数组,我需要分开的字符串…你能分享html示例吗,比如目标是什么?获取数据提供id
属性值?因此,循环通过li
元素并获取属性。与只给出工作代码相比,最好的回答问题的方法是解释为什么操作代码是不起作用,以及如何更正。只给出代码而不做任何解释对他和其他未来读者都没有帮助。@OlivierH你是对的。我本可以提供更多信息。但我看不出这个答案有任何理由让我投了2票反对票……如果你编辑你的答案,我会很高兴投你一票。
var ids = [];
$('li').each(function() {
ids.push($(this).data('offer-id'));
});
console.log(ids);