Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] Jak przywrócić zawartość pola DIV ?
Forum PHP.pl > Forum > Przedszkole
qverty
Mam kod którego zadaniem jest wczytanie do pola div zawartości pliku html którego nazwa została podana przez użytkownika. Wygląda to tak:

  1. <script type="text/javascript">
  2. $(document).ready(function()
  3. {
  4. $('#button').click(function(){
  5. var plik = $("#nazwapliku").val();
  6. $('#container').load(plik+'.html',
  7. function(responseText, textStatus, XMLHttpRequest) {
  8. if(textStatus == 'error') {
  9. $('#container').html('<p>wystapil blad.</p>');
  10. }
  11. });
  12. });
  13.  
  14. });
  15.  
  16.  
  17. <div id="container">
  18. <p>
  19. Lorem ipsum dolor sit amet.<br /><br />
  20. <input type="text" name="tekst" id="nazwapliku" />
  21. <input type="button" value="OK" id="button" />
  22. </p>
  23. </div>


Problem polega na tym, że jeżeli plik nie istnieje w polu div pojawi się tekst "wystapil blad". Jak teraz dodać do tego tekstu link, albo przycisk "powrót" który przywróci zawartość pola div, tak by można było ponownie wpisać nazwę pliku ? Mogę zrobić coś takiego: <a href="index.php">Powrót</a>, ale to przeładuje mi cała stronę, a tego chciałbym uniknąć.
mat-bi
[JAVASCRIPT] pobierz, plaintext
  1. $(function()
  2. {
  3. $("#powrot").click(function()
  4. {
  5. $("#container").val('');
  6. });
  7. });
[JAVASCRIPT] pobierz, plaintext


A w kodzie

  1. <a href="#" id="powrot">Powrót</a>


Pisane na szybko, sprawdź, czy działa

Sorry, źle zrozumiałem, w val daj

  1. <p>
  2. Lorem ipsum dolor sit amet.<br /><br />
  3. <input type="text" name="tekst" id="nazwapliku" />
  4. <input type="button" value="OK" id="button" />
  5. </p>
qverty
nie bardzo chce to działać, poza tym nie uśmiecha mi się powtarzanie tego samego fragmentu kodu...

ja kombinowałem tak:

  1. $('#container').html('<p>wystapil blad<br /><input type="button" id="wroc" value="powrot"></p>');
  2.  
  3. $('#wroc').click(function() {
  4. $('#container').show();
  5. });



Tylko że to też nie chce działać...
mat-bi
Sorry, źle! val() jest do zmiany opcji value, nie kodu smile.gif

No to może

$("#button").click(function()
{
$("#container").hide();
});

$("#powrot").click(function()
{
$(#container").show();
});

Tylko musisz zrobić inny div dla zawartości, co sie pokaże, ten kod chowa i pokazuje div o id container
qverty
mam teraz coś takiego:

  1. <script type="text/javascript">
  2. $(document).ready(function()
  3. {
  4. $('#button').click(function(){
  5. var plik = $("#nazwapliku").val();
  6. $('#container').load(plik+'.html',
  7. function(responseText, textStatus, XMLHttpRequest) {
  8. if(textStatus == 'error') {
  9. $('#container').html('<p>wystapil blad.</p><a href="#" id="powrot">Powrót</a>');
  10. }
  11. });
  12. });
  13.  
  14. $("#powrot").click(function() {
  15. $("#container").show();
  16. });
  17.  
  18. });
  19.  
  20. <div id="container">
  21. <p>
  22. Lorem ipsum dolor sit amet.<br /><br />
  23. <input type="text" name="tekst" id="nazwapliku" />
  24. <input type="button" value="OK" id="button" />
  25. </p>
  26. </div>



i za nic nie mogę go zmusić, by po tym jak wywali tekst "wystąpił błąd" przywrócić widoczność div'a "container". Ten fragment:

  1. $('#container').html('<p>wystapil blad.</p><a href="#" id="powrot">Powrót</a>');
  2.  
  3. $("#powrot").click(function() {
  4. $("#container").show();
  5. });


po prostu nie działa.
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.