Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jquery] problem z przykładem if
Forum PHP.pl > Forum > XML, AJAX
lamcpp
Witam chciałbym zrobić prostą instrukcje if, która w zależności od tego czy element ma klasę wyswietla dany tekst, ale nie widać zadnego efektu tak jakby instrukcja if nie działała;/ ktos mógłby napisać co jest nie tak w tym kodzie?
html:
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <head>
  3. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  4. <script src="jquery.js"></script>
  5. <script src="cos.js"></script>
  6. </head>
  7. <body>
  8. <p id="pierwszy">Moj akapit</p><span></span>
  9. <p id="drugi" class="cos">Moj akapit2</p><span></span>
  10.  
  11. </body>
  12. </html>


cos.js:
  1. $(document).ready(function(){
  2. if ($("p#pierwszy").hasClass("cos")){
  3. $(this).append("zawiera klasę cos");
  4. }
  5. else{
  6. $(this).append("nie zawiera klasy cos");
  7. }
  8.  
  9. });
mortus
W takiej sytuacji $(this) odnosi się do obiektu jQuery. Dlatego nic się nie dzieje. Powinno być raczej:
[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function() {
  2. var p = $("p#pierwszy");
  3. if(p.hasClass("cos")) {
  4. p.append("zawiera klasę cos");
  5. } else {
  6. p.append("nie zawiera klasy cos");
  7. }
  8. });
[JAVASCRIPT] pobierz, plaintext
lub podobnie jak Ty to zrobiłeś:
[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function() {
  2. if($("p#pierwszy").hasClass("cos")) {
  3. $("p#pierwszy").append("zawiera klasę cos");
  4. } else {
  5. $("p#pierwszy").append("nie zawiera klasy cos");
  6. }
  7. });
[JAVASCRIPT] pobierz, plaintext
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.