Preluare nume din tag-ul <a> dupa clic pe un buton

Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
Stefan
Mesaje: 114

Preluare nume din tag-ul <a> dupa clic pe un buton

Salut,
Sa zicem ca am lista de mai jos, cum as putea ca atunci cand apas pe un "buton" sa imi preia numele din tag-ul <a> asociat?

Cod: Selectaţi tot

<ul>
	<li>
		<a href="" class="nume">Nume 1</a>
		<button>Buton</button
	</li>
	<li>
		<a href="" class="nume">Nume 2</a>
		<button>Buton</button
	</li>
	<li>
		<a href="" class="nume">Nume 3</a>
		<button>Buton</button
	</li>
	<li>
		<a href="" class="nume">Nume 4</a>
		<button>Buton</button
	</li>
</ul>  
Daca folosesc .text() imi preia toate valorile, daca folosec .val() imi preia doar prima valoare

Cod: Selectaţi tot

$(document).on('click', '.reply', 
    alert($('.nume').text());
});

MarPlo
Salut,
Poti sa folosesti scriptul JS din urmatorul exemplu. Tagul UL sa aibe un id, aici e "ul1".

Cod: Selectaţi tot

<ul id="ul1">
<li>
  <a href="" class="nume">Nume 1</a>
  <button>Buton</button
</li>
<li>
  <a href="" class="nume">Nume 2</a>
  <button>Buton</button
</li>
<li>
  <a href="" class="nume">Nume 3</a>
  <button>Buton</button
</li>
</ul> 

<script>
let ul1_btns = document.querySelectorAll('#ul1 button');
for(var i=0; i<ul1_btns.length; i++){
  ul1_btns[i].addEventListener('click', (e)=>{
    var a_name = e.target.parentNode.querySelector('.nume').innerHTML;
    alert(a_name);
  });
}
</script> 

Stefan
Nu se intampla nimic cu codul respectiv

MarPlo
Vezi in consola browser-ului sa nu ai erori javascript in pagina.
Testeaza acel cod asa cum e intr-o pagina simpla html.
Eu am testat si functineaza; la clic pe un buton apare o fereastra alert cu numele din tagul <a> de langa acel buton.

Subiecte similare