Я пытаюсь получить доступ к элементу, который не имеет идентификатора и имеет общее имя класса, используя Javascript. Как я могу успешно это сделать?
Я пытался использовать свойство document.getElementsbyClassName, но, поскольку имя класса используется другими элементами, это не работает.
<a class = "sharedClass anotherClass" href = "www.mybooks.com" data-m = "{"CN":"uniquename"}"> Proceed </a>
Я хочу иметь возможность щелкнуть элемент Proceed из приведенного выше кода. Обратите внимание, что uniquename уникален для этого элемента. Я думаю, мы можем использовать это как-то здесь, но я не совсем уверен.
Можете ли вы предоставить действительный HTML? Ваши двойные кавычки нарушают синтаксис
Вам нужно поделиться фрагментом, чтобы мы могли следить за вами более эффективно. Спасибо



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Как упомянул @Buffalo в своем комментарии, вы можете получить список всех элементов, разделяющих имя класса, перебрать набор результатов и проверить атрибут data-m, пока не найдете тот, который вам нужен:
var elements = document.getElementsByClassName("sharedClass");
var myElement;
for (var i = 0; i < elements.length; i++) {
if (elements[i].getAttribute("data-m") == '{"CN":"uniquename"}') {
myElement = elements[i];
}
}
console.info(myElement);<a class = "sharedClass anotherClass" href = "www.mybooks.com" data-m='{"CN":"uniquename"}'> Proceed </a>
<a class = "sharedClass anotherClass" href = "www.mybooks.com" data-m='{"CN":"uniquename2"}'> Proceed </a>Вы также можете быть немного более кратким, используя вместо этого querySelector:
var myElement = document.querySelector("[data-m='{\"CN\":\"uniquename\"}");
console.info(myElement);<a class = "sharedClass anotherClass" href = "www.mybooks.com" data-m='{"CN":"uniquename"}'> Proceed </a>
<a class = "sharedClass anotherClass" href = "www.mybooks.com" data-m='{"CN":"uniquename2"}'> Proceed </a>
document.getElementsByClassName('className') вернет массив элементов, имеющих этот класс. вы можете перебирать этот массив, чтобы получить доступ к элементу.