#javascript #jquery
#javascript #jquery
Вопрос:
Как добавить текст рядом с каждой соответствующей ссылкой?
for (var i = 0; i < author.length; i ) {
var adminID = author[i]["href"].match(//users/(d )/g);
for (var j = 0; j < userID.length; j ) {
if (adminID == userID[j]) {
$(`a[href*="${userID[j]}"]`).append('<span>text</span>');
}
}
}
Комментарии:
1. Я не уверен, что понимаю. Можете ли вы показать значения
author
иuserID
, и как вы хотите изменить HTML?
Ответ №1:
Установите флаг, чтобы указать, что он был добавлен
for (var i = 0; i < author.length; i ) {
var adminID = author[i]["href"].match(//users/(d )/g);
var appended = false;
for (var j = 0; j < userID.length; j ) {
if (adminID == userID[j] amp;amp; !appended) {
appended = true;
$(`a[href*="${userID[j]}"]`).append('<span>text</span>');
}
}
}
Комментарии:
1. Почему бы просто не использовать
break
для завершения внутреннего цикла?2. Что, если во внешнем цикле есть дубликат
adminID
? Он будет соответствовать одному и тому же идентификатору несколько раз.3. Я понятия не имею, какой у него набор данных или хочет ли он использовать дополнительную логику.
4. Да, я просил разъяснений выше. Я не считаю это достаточно ясным, чтобы ответить хорошо.
Ответ №2:
Только break
после:
for (var i = 0; i < author.length; i ) {
var adminID = author[i]["href"].match(//users/(d )/g);
for (var j = 0; j < userID.length; j ) {
if (adminID == userID[j]) {
$(`a[href*="${userID[j]}"]`).append('<span>text</span>');
break;
}
}
}