Я не могу понять, где я ошибаюсь. Я пытался так много возможностей и ответов найти на SO, но это просто не дает мне значение пользовательского атрибута attr-pid "javascript json jquery can not get custom value value
<div class="prod-col et_pb_column et_pb_column_4_4" style="">
<div attr-pid="2" class="bbb_prov product_select et_pb_column et_pb_column_2_4 model_container">
<div class="icon" attr-pid="2"><img src=" " style=" max-width: 100px;"</div></div>
<div attr-pid="4" class="bbb_prov product_select et_pb_column et_pb_column_2_4 model_container">
<div class="icon" attr-pid="4"><img src=" " style=" max-width: 100px;"></div></div>
</div>
Я это
aProvider = $(".bbb_prov");
if (me.savedJSON.providersToVisit == undefined)
{
me.savedJSON.providersToVisit = [];
}
for(var y = 0 ; y < aProvider.length ; y++)
{
me.savedJSON.providersToVisit.push("&bxb_provider_id="+$(aProvider[y]).attr('attr-pid'));
}
CEF_SaveDataJSON(me.savedJSON);
console.log(JSON.stringify(me.savedJSON, null, 2));
Это работает на моей другой DIV, где у меня есть только один класс, но здесь, где его несколько, console.log просто показывает мне:
"providersToVisit": []
'aProvider' - это коллекция jquery. Я не уверен, что вы можете получить к ним доступ с использованием нотации массива. – bassxzero
@Santi, когда вы используете '[]' accessor на объекте jQuery, он будет основным объектом, поэтому в этом случае это будет фактический элемент DOM. Хотя они могли бы использовать ['.eq (y)'] (http://api.jquery.com/eq/) вместо этого, чтобы получить обернутый элемент jQuery в этой позиции или просто использовать ['.each()'] (http://api.jquery.com/each/) для прокрутки коллекции. –
Да, ты прав Патрик, я только что отредактировал свой комментарий. Я вошел в JSFiddle, чтобы исследовать мои подозрения и нашел то же самое! Благодарю. – Santi