1

I'm currently learning Javascript and ran into a small problem. The text between the Span tag should be displayed in the alert. I've tried using getElementby ID, Name, Class Name and TextContent. But without success. What I get instead of the name is "undefined" Can anyone help me out here? Thank you

Javascript:

function SayName(){

username = document.getElementById("nameof").textContent;
alert(username);}

HTML:

        <div class="swiper-slide card">
            <div class="card-content">
              <div class="image">
                <img src="images/Bake.jpeg" alt="">
              </div>
  
              <div class="media-icons">
                <i class="fab fa-facebook"></i>
                <i class="fab fa-twitter"></i>
                <i class="fab fa-github"></i>
              </div>
  
              <div class="name-profession">
                <span class="name" id="nameof">Lukas</span>
                <span class="profession">Back-End Developer</span>
              </div>
  
              <div class="rating">
                <i class="fas fa-star"></i>
                <i class="fas fa-star"></i>
                <i class="fas fa-star"></i>
                <i class="fas fa-star"></i>
                <i class="far fa-star"></i>
              </div>
  
              <div class="button">
                <button class="aboutMe" id="btn" onclick="SayName()">About Me</button>
                <button class="hireMe">Hire Me</button>
              </div>
            </div>
          </div>

           <div class="swiper-slide card">
                      <div class="card-content">
                        <div class="image">
                          <img src="images/Tare.jpeg" alt="">
                        </div>
            
                        <div class="media-icons">
                          <i class="fab fa-facebook"></i>
                          <i class="fab fa-twitter"></i>
                          <i class="fab fa-github"></i>
                        </div>
            
                        <div class="name-profession">
                          <span class="name" id="nameof">Tarik Kadric</span>
                          <span class="profession">Front-End Developer</span>
                        </div>
            
                        <div class="rating">
                          <i class="fas fa-star"></i>
                          <i class="fas fa-star"></i>
                          <i class="fas fa-star"></i>
                          <i class="fas fa-star"></i>
                          <i class="far fa-star"></i>
                        </div>
        
                    <div class="button">
                      <button class="aboutMe" id="btn" onclick="SayName()">About Me</button>
                      <button class="hireMe">Hire Me</button>
                    </div>
                  </div>
                </div>

1 Answers1

1

This is an important thing to know - ID's must be unique!

You had 2 id's with the same name - nameof, that is not allowed.

I've changed the ID's, and made 2 functions, one for each alert.

usernameLukas = document.getElementById("nameOfLukas").textContent;
usernameTarik = document.getElementById("nameOfTarik").textContent;
function SayName(){
alert(usernameLukas);
}

function SayNameTarik(){
alert(usernameTarik);
}          
 <div class="swiper-slide card">
            <div class="card-content">
              <div class="image">
                <img src="images/Bake.jpeg" alt="">
              </div>
  
              <div class="media-icons">
                <i class="fab fa-facebook"></i>
                <i class="fab fa-twitter"></i>
                <i class="fab fa-github"></i>
              </div>
  
              <div class="name-profession">
                <span class="name" id="nameOfLukas">Lukas</span>
                <span class="profession">Back-End Developer</span>
              </div>
  
              <div class="rating">
                <i class="fas fa-star"></i>
                <i class="fas fa-star"></i>
                <i class="fas fa-star"></i>
                <i class="fas fa-star"></i>
                <i class="far fa-star"></i>
              </div>
  
              <div class="button">
                <button class="aboutMe" id="btn" onclick="SayName()">About Me</button>
                <button class="hireMe">Hire Me</button>
              </div>
            </div>
          </div>

           <div class="swiper-slide card">
                      <div class="card-content">
                        <div class="image">
                          <img src="images/Tare.jpeg" alt="">
                        </div>
            
                        <div class="media-icons">
                          <i class="fab fa-facebook"></i>
                          <i class="fab fa-twitter"></i>
                          <i class="fab fa-github"></i>
                        </div>
            
                        <div class="name-profession">
                          <span class="name" id="nameOfTarik">Tarik Kadric</span>
                          <span class="profession">Front-End Developer</span>
                        </div>
            
                        <div class="rating">
                          <i class="fas fa-star"></i>
                          <i class="fas fa-star"></i>
                          <i class="fas fa-star"></i>
                          <i class="fas fa-star"></i>
                          <i class="far fa-star"></i>
                        </div>
        
                    <div class="button">
                      <button class="aboutMe" id="btn" onclick="SayNameTarik()">About Me</button>
                      <button class="hireMe">Hire Me</button>
                    </div>
                  </div>
                </div>
aca
  • 1,071
  • 5
  • 15