Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] Linki - problem z href i onClick
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Szadow
Witajcie!
W jQuery jestem początkujący i w trakcie pracy napotkałem problem:

Mam kod w jQuery że po kliknięciu w link w pewnym divie pojawia się zawartość pliku href'a (kod niżej) tylko że po kliknięciu w link przechodzi na tą stronę!
Próbowałem return 0; ale to nie działa.

Wpadłem na inny pomysł, że w "a" będzie onclick="java script:go('sciezka')", ale wtedy pojawia siew konsoli błędów go is not defined, ale w skrypcie mam tą funkcję!

Z góry dziękuje za pomoc.

[JAVASCRIPT] pobierz, plaintext
  1. var go = function(href) // probowalem z function go(href)
  2. {
  3. $('document').ready(function()
  4. {
  5. $('#menu a').click(function()
  6. {
  7. return 0; // w <a onclick="return 0;"></a> też próbowałem
  8. $('value').hide("slow");
  9. //var href = $(this).attr('href');
  10. $.get(href,function(data)
  11. {
  12. $('#value').html(data);
  13. });
  14. $('#value').show("slow");
  15. });
  16. });
  17. }
[JAVASCRIPT] pobierz, plaintext
markonix
W href daj #, a wartość przekazuj jakkolwiek inaczej (title, dowolny atrybut, klasa).
Szadow
@up obeszło się bez #, ale o co ci chodzi z tym inaczej?

Poradziłem sobie, nie przenosi tyle że po kliknięciu pustka, nic sienie dzieje a w konsoli błędów: Nic.

Kod:
[JAVASCRIPT] pobierz, plaintext
  1. $('document').ready(function()
  2. {
  3. $('#link').click(function()
  4. {
  5. alert('a'); // nie wyświetla - jest błąd
  6. $('#value').hide("slow");
  7. var href = $('#link').attr('href');
  8. $.get(href,function(data)
  9. {
  10. $('#value').html(data);
  11. });
  12. $('#value').show("slow");
  13. });
  14. });
[JAVASCRIPT] pobierz, plaintext


  1. <div id="menu">
  2. <a href="gr.html" onclick="java script:return false;" id="link">Strona Główna</a>
  3. </div>
markonix
Sporą zaletą jQ, z której moim zdaniem należy korzystać to 100% rozdzielnie kodu JS od kodu HTML.

Robisz to np. za pomocą klasy linków np. "loadlinks", a jQuery piszesz "$('.loadlinks').click(function()" czyli funkcja click na elementach z klasą loadlinks.
Wtedy unikasz kodu JS (tego onClick) w htmlu. W href dajesz #, a np. w tiitle (ale może być cokolwiek innego) dajesz nazwę podstrony, którą ma wczytać.
Np.
Kod
<a href="#" class="loadlinks" title="o_mnie">O mnie</a>

a jQuery:

Kod
var url = $this.attr('title') + '.php'; // tworzysz argument do funkcji load czyli nazwę pliku, ewentualnie ścieżkę
$('#jakis_div').load(url);


(wszystko z palca)
Szadow
Poradziłem sobie, aż wstyd się przyznać że w script zamiast src dałem href.

Temat do zamknięcia, i plus z próbę pomocy.
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.