Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery][AJAX][PHP] - operowanie na atrybutach z innego pliku po wczytaniu go do pliku-pojemnika
igreko
post 1.05.2016, 18:11:45
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 1.05.2016

Ostrzeżenie: (0%)
-----


Witam, mam problem, a mianowicie:
Mam plik pojemnik.html - w którym znajduje sie div #pojemnik - do którego ładowana jest treśc pliku skrypt.html po przez skrypt js - pojemnik.js.
W pliku skrypt.html jest link, ktory po kliknieciu nie powinien przejsc do strony awartej w atrybucie href - blokada przejscia jest zawarta w skrypcie skrypt.js, ktòry również jes podpięty do pliku pojemnik.js.
Problem polega na tym, że po kliknieciu i tak przechodzi do wskazanej strony. Ładowanie skrypt.html do #pojemnik jest za pomocą ajax w jquery
Link to tylko przyklad, chodzi mi o interakcje tresci pobranej z pliku.php z skryptem.js w innym pliku.chcialbym zeby ta reakcja zachodzila z gory dziekuje i zaznaczam ze nie będe odpowiadal na
tresci, które nic nie wnoszą do tematu.

Jeśli chodzi o to po co to tak wszystko komplikowac to odpowiem ze inaczej byc nie moze

Pojemnik.html
  1. <html>
  2. <head>
  3. <script src="jquery.js"></script>
  4. <script src="pojemnik.js"></script>
  5. <script src="skrypt.js"></script>
  6. </head>
  7. <body>
  8. <div id="pojemnik">
  9.  
  10. </div>
  11.  
  12. </body>
  13. </html>


Pojemnik.js
  1. jQuery(document).ready(function()
  2. {
  3.  
  4. alert('wczytano pojemnik');
  5.  
  6.  
  7. $('#pojemnik').load('skrypt.php');
  8.  
  9.  
  10. });


Skrypt.php
  1. to jest tresc wczytana z skrypt.php
  2. <a href="noload.php">po kliknieciu tego strona nie powinna sie przeladowac</a>


Skrypt.js
  1. jQuery(document).ready(function()
  2. {
  3. alert('wczytano skrypt.js');
  4. $('a').click(function()
  5. {
  6. return false;
  7. });
  8. });


Oprocz funkcji load probowalem jeszcze przeslac dane za pomocą $ajax i $.post rowniez z mizernym skutkiem
Go to the top of the page
+Quote Post
avalanche
post 1.05.2016, 19:03:10
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 1
Dołączył: 1.05.2016

Ostrzeżenie: (0%)
-----


przypisanie zdarzenia do $('a') spróbuj zrobić funkcją, która umożliwia przypisanie za każdym razem, gdy taki element pojawi się w DOMie.
jeśli dobrze pamiętam, to http://api.jquery.com/on/ - nie mam pewności, bo nie siedzę w JS
Go to the top of the page
+Quote Post
igreko
post 1.05.2016, 21:30:58
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 1.05.2016

Ostrzeżenie: (0%)
-----


Dzięki, poczytam. W Mojej książce nic o tym nie było.on() jest zalecane od 1.7 ja czytalem książke gdy najnowszą wersją było 1.6 biggrin.gif mam nadzieje że cos pomoze smile.gif ale jestem otwarty na inne rozwiazania jezeli takowe istnieja. Dziękuje za odpowiedź

Dobra, jak zrobic to ze zdarzeniami juz wiem, uzywam metody on() ale to tylko ze zdarzeniami a jezeli chcialbym dodac wlasciwosc css do dynamicznego elemetu strony?
$('#cos').css({'font-color':'red'}); - nie zadziala jezeli elemet zostanie dynamicznie dodany. Prosze o pomoc smile.gif
Go to the top of the page
+Quote Post
rad11
post 2.05.2016, 08:39:53
Post #4





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Dodaj normalnie do pliku css jakaś klasę która będzie miała te atrybuty i zamiast operować na .css zrób .addClass

Ten post edytował rad11 2.05.2016, 08:41:26
Go to the top of the page
+Quote Post
igreko
post 3.05.2016, 00:21:34
Post #5





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 1.05.2016

Ostrzeżenie: (0%)
-----


No dobra a jezeli mam dodac html do tresci, której jeszcze nie ma bơ jest dodawana dynamicznie?
$('#cont').html('nowa tresc');
Cont jest pobierane z pliku skrypt.html
Do pliku pojemnik.html
Po przez pojemnik.js w metodzie ajax
Wiem ze to zadziala jezeli to zrobie w tên sposob
  1. $ajax({
  2. url:"skrypt.php",
  3. success:function(data){
  4. $('pojemnik').html(data);
  5. $('#cont').html('nowa tresc');
  6. }
  7. });

Ale jezeli kod:
$('#cont').html('nowa tresc');
Jest podany poza funkcja ten kod nie zadziala, zalerzy mi na tym zeby było można operowac na $('#cont') z kazdego miejsca nawet z innego skryptu js ktory jest podpięty do pojemnika
Go to the top of the page
+Quote Post
rad11
post 4.05.2016, 08:27:08
Post #6





Grupa: Zarejestrowani
Postów: 1 270
Pomógł: 184
Dołączył: 7.10.2012
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


No to przeciez Ci napisałem dodaj klasę do tego np:
  1.  
  2. $('#cont').html('nowa tresc');
  3. $('#cos').addClass("red-font");
  4.  


a w pliku css dodaj:

  1. .red-font{
  2. 'font-color':'red'
  3. }
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 06:45