Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.03.2022, 18:56
Аспирант
Отправить личное сообщение для Judgin Посмотреть профиль Найти все сообщения от Judgin
 
Регистрация: 31.05.2021
Сообщений: 32

Извлечь значение атрибута строки находящейся в массиве
Здравствуйте, нужно получить значение атрибута в переменную (см.фото). Пробовал что-то типа
let title = Array.from(doc.querySelectorAll('li')).map(x => x.innerHTML('title');


но не извлекает таким образом 'title'. Прошу подсказать как достичь нужного результата. Ниже сам код.

[HTML]<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
</head>
<body>
	<p id="content"/>
[/HTML]
<script>
	window.addEventListener("DOMContentLoaded", () => {
		let url = "https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D1%82%D0%B5%D0%B3%"
		url = url + "D0%BE%D1%80%D0%B8%D1%8F:%D0%9A%D0%B8%D0%BD%D0%BE%"
		url = url + "D0%BA%D0%BE%D0%BC%D0%B5%D0%B4%D0%B8%D0%B8_%D0%A1%"
		url = url + "D0%A1%D0%A1%D0%A0"
		fetch(url)
		.then(function (response) {
		// The API call was successful!
		return response.text();
		})
		.then(function (html) {
		// Convert the HTML string into a document object
		let parser = new DOMParser();
		let doc = parser.parseFromString(html, 'text/html');
		let str = "";
		// Get the image file
		
		let movieList =  Array.from(doc.querySelectorAll('li')).map(x => x.innerHTML);
		
		// let titles = Array.from(doc.querySelectorAll('li')).map(x => x.innerHTML('title');
		
		movieList = movieList.map(function(x){ 
			return x.replace(/<a href="/g,'<a href="https://ru.wikipedia.org/') 
		});
		for(i = 0; i < movieList.length; i++) {
			str += movieList[i] + '<br>';
		}
		content.innerHTML = str;
		console.log(str);
		})
		.catch(function (err) {
		// There was an error
		console.warn('Something went wrong.', err);
		});
	});
</script>
</body>
</html>
https://drive.google.com/file/d/1J3a...ew?usp=sharing

Последний раз редактировалось ksa, 13.03.2022 в 10:42.
Ответить с цитированием
  #2 (permalink)  
Старый 12.03.2022, 19:17
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Judgin,
https://developer.mozilla.org/en-US/...t/getAttribute
Ответить с цитированием
  #3 (permalink)  
Старый 12.03.2022, 21:12
Аспирант
Отправить личное сообщение для Judgin Посмотреть профиль Найти все сообщения от Judgin
 
Регистрация: 31.05.2021
Сообщений: 32

Сообщение от рони Посмотреть сообщение
Judgin,
https://developer.mozilla.org/en-US/...t/getAttribute
Пытаюсь получить значение атрибута с помощью getAttribute

let title = document.getElementsByClassName('category-item');
let attrVal =  title.getAttribute('title');
console.log(attrVal);


Но в итоге получаю ошибку в консоль TypeError: title.getAttribute is not a function

Почему это происходит?

Последний раз редактировалось Judgin, 12.03.2022 в 21:27.
Ответить с цитированием
  #4 (permalink)  
Старый 12.03.2022, 21:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Judgin,
getElementsByClassName выберите нужный элемент из списка!
let attrVal =  title[0].getAttribute('title')


или
let titles  = Array.from(document.getElementsByClassName('category-item'), x => x.getAttribute('title'));
Ответить с цитированием
  #5 (permalink)  
Старый 13.03.2022, 00:06
Аспирант
Отправить личное сообщение для Judgin Посмотреть профиль Найти все сообщения от Judgin
 
Регистрация: 31.05.2021
Сообщений: 32

Сообщение от рони Посмотреть сообщение
Judgin,
getElementsByClassName выберите нужный элемент из списка!
let attrVal =  title[0].getAttribute('title')


или
let titles  = Array.from(document.getElementsByClassName('category-item'), x => x.getAttribute('title'));
Благодарю за помощь! Разобрался.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите значение данной строки? aleks7890 Общие вопросы Javascript 1 12.05.2011 14:50
Как получить значение атрибута width в теге img, находящемся в скрытом диве? kolyan1983 Internet Explorer 4 21.03.2011 15:14
Не могу получить значение атрибута DenQ jQuery 9 06.02.2011 14:33
Извлечь значение параметра из location.search регулярным выражением? Бобр Общие вопросы Javascript 8 26.01.2010 01:01
Кроссброузерно определить значение атрибута faunder Общие вопросы Javascript 5 21.02.2009 22:08