Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: coś takiego jak dynamiczy link
Forum PHP.pl > Forum > Po stronie przeglądarki
Jack77
Witam,
Nie za dużo umiem w JS, a temat zahacza o JS więc pisze tutaj wink.gif
Otóż chciałem zrobić coś takiego jak 'dynamiczne linki' czyli html znacznik <a> który href i anchor text miałby dynamicznie ustalany przez zmienną w JavaScripcie. Konkretnie mam taki kod:


<script type="text/javascript">
var sourcewww = localStorage.getItem("cms_sourcewww");
//alert(localStorage.getItem("cms_sourcewww")); //ten alert działa poprawnie smile.gif
</script>

<div class="buttons">
<a href="/" class="regular roundies important">Przejdź do strony głównej</a>
<a href="http://www.mojastona.pl/webpage/porownanie-ofert.html" class="regular roundies important">Wróć do porównania ofert</a> //!! właśnie ten link powinien być dynamiczny exclamation.gif
</div>

I teraz - jak to zrobić aby w tym linku href i anchor text (pogrubione) posiadały wartości ustalone przez sourcewww w kodzie JS powyżej questionmark.gif?
Dzięki

b4rt3kk
Cytat(Jack77 @ 19.10.2016, 15:59:55 ) *
Witam,
Nie za dużo umiem w JS, a temat zahacza o JS więc pisze tutaj wink.gif
Otóż chciałem zrobić coś takiego jak 'dynamiczne linki' czyli html znacznik <a> który href i anchor text miałby dynamicznie ustalany przez zmienną w JavaScripcie. Konkretnie mam taki kod:


<script type="text/javascript">
var sourcewww = localStorage.getItem("cms_sourcewww");
//alert(localStorage.getItem("cms_sourcewww")); //ten alert działa poprawnie smile.gif
</script>

<div class="buttons">
<a href="/" class="regular roundies important">Przejdź do strony głównej</a>
<a href="http://www.mojastona.pl/webpage/porownanie-ofert.html" class="regular roundies important">Wróć do porównania ofert</a> //!! właśnie ten link powinien być dynamiczny exclamation.gif
</div>

I teraz - jak to zrobić aby w tym linku href i anchor text (pogrubione) posiadały wartości ustalone przez sourcewww w kodzie JS powyżej questionmark.gif?
Dzięki


Jaki jest sens robienia tego w JS? Nie możesz już na etapie budowania strony? O ile robisz to w php...

Ale dodaj sobie jakieś id lub klasę do elementu a oraz następujący skrypt (jeśli masz dodane jQuery):

  1. $('#id_elementu').attr('href', localStorage.getItem("cms_sourcewww")).text(localStorage.getItem("cms_sourcewww"));
viking
  1. var x = 1;
  2. var a = document.querySelectorAll('.buttons a+a');
  3. [].forEach.call(a, function(a) {
  4. a.href = x;
  5. });


Gdzie x jest wyciągnięty z local storage. Selektor może być inny.
Jack77
Dzięki za odpowiedzi, generalnie potrzebne mi to do tego:

1. Jest sobie serwis o nieruchomościach
2. W pewnych miejscach serwisu zrobiłem wyskakujące okienko (confirm) "Zapraszamy do zarejestorwania się" + przekierowanie na formularz kontaktowy
(a do tego odrazu zapisuję w localstorage adres strony z której user przechodzi (= sourcewww))
3. No i jak już user się zarejestruje to wypada go spowrotem przekierować do strony źródłowej ...a tychże stron może być kilka.. :/
Więc ten link "powrót" musi być dynamiczny a nie statyczny.

Generalnie jeszcze jestem początkujący w JS, a Wasze skrypty trudne :|... ale znalazłem też coś takiego:
http://www.w3schools.com/jsref/tryit.asp?f...elmnt_innerhtml

gdzie metodą getElementById podmienia się różne właściwości linku.
A więc ja najpierw robię link jakikolwiek, a na końcu strony mam skrypcik, który robi:

document.getElementById("l_sourcewww").innerHTML = "Przejdź do strony źródłowej";
document.getElementById("l_sourcewww").href = localStorage.getItem("cms_sourcewww");
document.getElementById("l_sourcewww").target = "_blank";

i działa smile.gif
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.