У меня есть такой код:
<html>
<BUTTON ONCLICK = "stups()">VALUE FINDER </BUTTON>
<a value = "this is a value" href = "value"><img src = "b5.jpg"> values rule!!</a>
<p id = "demo"></p>
<script>
var a = document.getElementsByTagName("a").value
function stups(){
document.getElementById("demo").innerHTML=a
}
</script>
</html>
JavaScript просто предназначен для получения значения th (ссылки) при нажатии кнопки, я даже не знаю, каким должно быть значение, является ли это атрибутом href, атрибутом value, значением атрибута img или текст между двумя <a> и </a>, ну, я пробовал ВСЕ, что мог придумать, и это никогда не дает мне никакого значения, он продолжает давать мне слово undefined, пожалуйста, помогите.
NB:I need that to be in between the
<a></a>because it is a link
заранее спасибо
спасибо, а где мне поставить .getAttribute("value").?
Что ж, ваши намерения не очень ясны; ваш собственный вопрос указывает на то, что вы даже не уверены, какой атрибут вы хотите получить или как вы хотите идентифицировать <a>, относящийся к нажатию кнопки, среди всех тегов <a>, которые могут быть на странице.
Если вы хотите контролировать, куда тег a приведет вас, когда вы щелкнете по нему, установите атрибут href, а не атрибут value.
Заглавные буквы в Интернете считаются криком, пожалуйста, воздержитесь от их использования.



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


Вам нужно определить, какой атрибут вам нужен из тега a.
Так что попробуйте .getAttribute('value')
<html>
<button onclick = "stups()">VALUE FINDER </button>
<a value = "this is a value" href = "value"><img src = "b5.jpg"> values rule!!</a>
<p id = "demo"></p>
<script>
function stups(){
var a = document.getElementsByTagName('a')[0].getAttribute('value');
document.getElementById("demo").innerHTML=a
}
</script>
</html>В этих ситуациях MDN - ваш друг. Вы также не должны копировать код, который вы не понимаете. srcimg указывает на любое отображаемое изображение. Фактическая ссылка - это href тега a. Появляется текст внутри тега a. Не следует устанавливать атрибут value тега a, поскольку он нестандартен и не нужен. document.getElementsByTagName("a") возвращает массив всех тегов a в документе. Вам нужно указать первую ссылку, запустив document.getElementsByTagName("a")[0]. Вы можете получить ссылку, просто используя .href. В итоге функция stups должна выглядеть примерно так:
function stups(){
var a = document.getElementsByTagName("a")[0].href;
document.getElementById("demo").innerHTML = a;
}
Что ты имеешь в виду, MDN - мой друг ??
Прежде всего, позаботьтесь о том, что вы хотите сделать, потому что .getElementsByTagName("a") вернет вам коллекцию элементов.
Затем вы можете использовать .getAttribute("value"):
var a = document.getElementsByTagName("a");
function stups(){
document.getElementById("demo").innerHTML = a[0].getAttribute("value");
}<BUTTON ONCLICK = "stups()">VALUE FINDER </BUTTON>
<a value = "this is a value" href = "value"><img src = "b5.jpg"> values rule!!</a>
<p id = "demo"></p>⋅ ⋅ ⋅
Если вы хотите управлять несколькими элементами a, вы можете сделать следующее:
.querySelectorAll("a"), чтобы иметь возможность напрямую использовать петлю forEach,.push() ваши значения в массиве,var as = document.querySelectorAll("a");
function stups(){
var values = [];
as.forEach(function(a, index){
values.push(a.getAttribute("value") || '--- no value ---');
// OR: values.push(as[index].getAttribute("value"));
})
document.getElementById("demo").innerHTML = values.join('<br>');
}<BUTTON ONCLICK = "stups()">VALUE FINDER </BUTTON>
<a value = "this is a value" href = "value"><img src = "b5.jpg"> values rule!!</a>
<a value = "this is another value" href = "value"><img src = "b5.jpg"> values rule!!</a>
<a href = "value"><img src = "b5.jpg">No value here</a>
<a value = "this is another value, again" href = "value"><img src = "b5.jpg"> values rule!!</a>
<p id = "demo"></p>Надеюсь, поможет.
Я все же думаю, что должен уточнить, что value тега a вообще не имеет значения и, вероятно, не должен устанавливаться. Атрибут href - это то, на что на самом деле ведет ссылка.
Атрибут value нестандартен для тегов
<a>и ничего не значит для браузера. Однако вы можете получить его с помощью.getAttribute("value"). Также.getElementsByTagName()возвращает список элементов, и вам нужно проиндексировать или выполнить итерацию, чтобы получить отдельные узлы.