Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dodanie tekstu w js
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
gregi1
Pytanie mam funkcje:

  1. function dodaj_element(kontener){
  2. var znacznik = document.createElement('input');
  3.  
  4. znacznik.setAttribute('type', 'text');
  5. znacznik.setAttribute('name', 'Imie');
  6.  
  7. znacznik.className = 'upload';
  8.  
  9. var kontener = document.getElementById(kontener);
  10. kontener.appendChild(znacznik);
  11.  
  12. }
  13. //-->


I moje pytanie jest jak z lewej strony tego inputa wyswietlic jakis tekst. Np. Podaj imie...
melkorm
przed "wkładaniem" inputa możesz dać:
Kod
kontener.innerHTML = "Imie : ";


nie wiem jak to będzie wyglądać w Twoim kodzie i czy Ciebie to zadowala ale takie coś przyszło mi pierwsze do głowy .. jeżeli będziesz chciał bardziej złozony efekt napisz wiecej szczegółów + jakiś kod html'a gdzie to się wyświetla ;]
gregi1
Pomoglo tylko czesciowo bo moge wstawic ten kod tylko raz. A ja potrzebuje kilka takich tekstow przed kazdym

kontener.appendChild(znacznik);

bo mam ich kilka.
nospor
tekst dodajesz na identycznej zasadzie co inputa - tworzysz obiekt tekstowy i appendChild.

Jakbys jednak skorzystał z gotowych libow, np. jQuery, to Twoj kod by wyglądał tak:
Kod
function dodaj_element(kontener){
$('#'+kontener).append('<p>Twoj jakis tekst: <input type="text" name="Imie" class="upload" /></p>');
}

Przyjemniej, nieprawdaż?
gregi1
Pewnie ze przyjemniej ale ja jestem kompletnym laikiem w tej kwestii i czy aby korzystac z takiego liba, to pewnie trzeba cos na poczatku zaimportowac?
nospor
http://docs.jquery.com/How_jQuery_Works
czyli standardowo musisz dodac liba w <head>
  1. <head>
  2. <script type="text/javascript" src="jquery.js"></script>
  3. </head>
  4. <body>
  5. blabla
  6. </body>
  7. </html>
vokiel
Jak już dodajesz inputa, to zamiast paragrafu lepiej byłoby dodać label, ustawić atrybut for, dzięki czemu automatycznie kursor zostanie przeniesiony do danego inputa tongue.gif
czyli korzystająć z przykładu nospora:
  1. function dodaj_element(kontener){
  2. $('#'+kontener).append('<label for="upload_1">Twoj jakis tekst:</label><input type="text" name="Imie" id="upload_1" class="upload" />');
  3. }
gregi1
To jeszcze jedno pytanie jest dodaje sobie kilka pol to czy mozna je dodac w jakiejs tabeli aby byly ulozone. Nie wiem czy dobrze to wytlumaczylem chodzi mi o to aby bylo mniej wiecej tak :
  1. <table><tr><td>Jakis tekst</td><td><input.....></td><tr>
  2. <tr><td>Jakis tekst</td><td><input.....></td><tr></table>
questionmark.gif?

I pytanie drugie.... jesli chcialbym stworzyc przycisk usuwajacy dodany formularz to moge zrobic dokladnie taka sama funkcje i dac ja pod przycisk tylko zamiast append dac remove? Czy jest moze jakas funkcja usuwajaca wszystko od razy?

I mozna to podpiac pod przycisk przy dodawaniu go w taki sposob:
  1. $('#'+kontener).append('<label for="upload_1">Twoj jakis tekst:</label><input type="button" name="Imie" id="upload_1" class="upload" onclick="usunwszystko(); />');
vokiel
Żadnej tabelki nie potrzebujesz, css wystarczy
ustawiasz parametry dla label i input, wszystko razem jeszcze wrzucasz w div.
  1. <div class="holder"><label for="input_1">Input 1</label><input id="input_1" class="upload" /></div>
  2. <style type="text/css">
  3. .holder {clear: both; width: 600px;}
  4. .holder label{width: 300px; float: left; display: inline;}
  5. .holder input{display: inline;}
  6. <div>
  7. <div class="holder"><label for="input_1">Input 1</label><input id="input_1" class="upload" /></div>
  8. <div class="holder"><label for="input_2">Input 1</label><input id="input_2" class="upload" /></div>
  9. <div class="holder"><label for="input_3">Input 1</label><input id="input_3" class="upload" /></div>
  10. <div class="holder"><label for="input_4">Input 1</label><input id="input_4" class="upload" /></div>
  11. <div class="holder"><label for="input_5">Input 1</label><input id="input_5" class="upload" /></div>
  12. </div>


Tworzenie inputow wraz z przyciskami do ich usuwania. Tworzysz linki a href z klasą add oraz id z nazwa kontenera.
  1. <a href="#" class="add" id="id_kontenera" title="Dodaj nowy input" >dodaj</a>
  2. <script type="text/javascript">
  3. $(document).ready(
  4. function(){
  5. $("a.add").click(function(){
  6. // pobierasz id kontenera
  7. var kontener = $(this).attr('id');
  8. // tworzysz diva (kontenera dla lablela inputa i linku do usuniecia
  9. var new_div = '<div class="holder">';
  10. // tworzysz label i inputa
  11. var new_label_input = '<label for="input_1">Input 1</label><input id="input_1" class="upload" />';
  12. // tworzysz nowy link
  13. var new_link = $('<a href="#" >usun</a>');
  14. // dodajesz funkcje ktora po kliknieciu w link usunie parent div (czyli calego diva z labelem inputem i tym kliknietym a)
  15. new_link.click(function(){
  16. $(this).parent("div").remove();
  17. return false;
  18. });
  19. // dodajesz do diva lablel i input
  20. new_div.append(new_label_input);
  21. // dodajesz do diva link
  22. new_div.append(new_link);
  23. // dodajesz do kontenera caly div
  24. $('#'+kontener).append(new_div);
  25. return false;
  26. });
  27. });
gregi1
Cytat(vokiel @ 14.11.2008, 12:05:59 ) *
Żadnej tabelki nie potrzebujesz, css wystarczy
ustawiasz parametry dla label i input, wszystko razem jeszcze wrzucasz w div.
  1. <div class="holder"><label for="input_1">Input 1</label><input id="input_1" class="upload" /></div>
  2. <style type="text/css">
  3. .holder {clear: both; width: 600px;}
  4. .holder label{width: 300px; float: left; display: inline;}
  5. .holder input{display: inline;}
  6. <div>
  7. <div class="holder"><label for="input_1">Input 1</label><input id="input_1" class="upload" /></div>
  8. <div class="holder"><label for="input_2">Input 1</label><input id="input_2" class="upload" /></div>
  9. <div class="holder"><label for="input_3">Input 1</label><input id="input_3" class="upload" /></div>
  10. <div class="holder"><label for="input_4">Input 1</label><input id="input_4" class="upload" /></div>
  11. <div class="holder"><label for="input_5">Input 1</label><input id="input_5" class="upload" /></div>
  12. </div>


Czyli co to normalnie mam wrzucic do html w miejscy gdzie chce aby te inputy sie pojawily?
Ale ten div nie bedzie widoczny dopuki nie klikne dodaj nowy input?
Cytat
Tworzenie inputow wraz z przyciskami do ich usuwania. Tworzysz linki a href z klasą add oraz id z nazwa kontenera.
  1. <a href="#" class="add" id="id_kontenera" title="Dodaj nowy input" >dodaj</a>
  2. <script type="text/javascript">
  3. $(document).ready(
  4. function(){
  5. $("a.add").click(function(){
  6. // pobierasz id kontenera
  7. var kontener = $(this).attr('id');
  8. // tworzysz diva (kontenera dla lablela inputa i linku do usuniecia
  9. var new_div = '<div class="holder">';
  10. // tworzysz label i inputa
  11. var new_label_input = '<label for="input_1">Input 1</label><input id="input_1" class="upload" />';
  12. // tworzysz nowy link
  13. var new_link = $('<a href="#" >usun</a>');
  14. // dodajesz funkcje ktora po kliknieciu w link usunie parent div (czyli calego diva z labelem inputem i tym kliknietym a)
  15. new_link.click(function(){
  16. $(this).parent("div").remove();
  17. return false;
  18. });
  19. // dodajesz do diva lablel i input
  20. new_div.append(new_label_input);
  21. // dodajesz do diva link
  22. new_div.append(new_link);
  23. // dodajesz do kontenera caly div
  24. $('#'+kontener).append(new_div);
  25. return false;
  26. });
  27. });


Ale ta funkcje dodaj_element(kontener) musze tez miec?
vokiel
Nie tej funkcji już nie musisz mieć, taka jest zaleta jquery, że sama wykryje, że kliknąłeś w odpowieni link ($("a.add").click)
- css wrzucasz tam gdzie zawsze wrzucasz css tongue.gif
- js wrzucasz w head
- <a href="#" class="add" id="id_kontenera" title="Dodaj nowy input" >dodaj</a> wrzucasz w miejsce gdzie chcesz zeby tresc sie pojawiala (wrzucając to w diva o jakimś id, żeby jquery wiedziała gdzie dodać inputy) czyli np
  1. <div id="kontener_na_nowe_inputy_div">
  2. <a href="#" class="add" id="kontener_na_nowe_inputy" title="Dodaj nowy input" >dodaj</a>
  3. </div>

schemat dokumentu
1. nagłowek
2. head a w nim css, jquery z listingu
3. body a w nim div z kontenerem i w nim inputy

zmieniłem jedną rzecz (żeby zachować poprawną semantykę, div w który js będzie wpisywać nowe wartości ma dodane na końcu _div, żeby nie było dwóch elementów na stronie o tym samym id)
czyli w js trzeba zmienić linijkę:
  1. <!-- z tego -->
  2. var kontener = $(this).attr('id');
  3. <!-- na ten -->
  4. var kontener = $(this).attr('id')+ '_div';
gregi1
Wiesz co nie wiem czy dobrze to zrobilem ale moja strona wyglada tak i troche to nie dziala, bo od razu mam wyswietlone inputy, a po kliknieciu w przycisk nic sie nie dzieje

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  3.  
  4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  5. <link href="css/main.css" rel="stylesheet" type="text/css">
  6. <script type="text/javascript" src="js/swfobject.js"></script>
  7. <script type="text/javascript" src="js/script.js"></script>
  8. <script type="text/javascript" src="js/skrypt.js"></script>
  9. <script language="javascript">AC_FL_RunContent = 0;</script>
  10. <script src="pl/AC_RunActiveContent.js" language="javascript"></script>
  11. <script type="text/javascript" src="jquery.js"></script>
  12.  
  13.  
  14. <script type="text/javascript">
  15. $(document).ready(
  16. function(){
  17. $("a.add").click(function(){
  18. // pobierasz id kontenera
  19. var kontener = $(this).attr('id')+ '_div';
  20. // tworzysz diva (kontenera dla lablela inputa i linku do usuniecia
  21. var new_div = '<div class="holder">';
  22. // tworzysz label i inputa
  23. var new_label_input = '<label for="input_1">Podaj imie:</label><input type="text" id="input_1" class="upload" />';
  24. // tworzysz nowy link
  25. var new_link = $('<a href="#" >usun</a>');
  26. // dodajesz funkcje ktora po kliknieciu w link usunie parent div (czyli calego diva z labelem inputem i tym kliknietym a)
  27. new_link.click(function(){
  28. $(this).parent("div").remove();
  29. return false;
  30. });
  31. // dodajesz do diva lablel i input
  32. new_div.append(new_label_input);
  33. // dodajesz do diva link
  34. new_div.append(new_link);
  35. // dodajesz do kontenera caly div
  36. $('#'+kontener).append(new_div);
  37. return false;
  38. });
  39. });
  40. </head>
  41.  
  42.  
  43. <div id="kontener_na_nowe_inputy_div">
  44. <a href="#" class="add" id="kontener_na_nowe_inputy" title="Dodaj nowy input" >dodaj</a>
  45. </div>
  46.  
  47. <div class="holder"><label for="input_1">Podaj imie</label><input type="text" id="input_1" class="upload" /></div>
  48. <style type="text/css">
  49. .holder {clear: both; width: 600px;}
  50. .holder label{width: 300px; float: left; display: inline;}
  51. .holder input{display: inline;}
  52. <div>
  53. <div class="holder"><label for="input_1">Input 1</label><input type="text" id="input_1" class="upload" /></div>
  54.  
  55. </div>
  56.  
  57. </body>
  58. </html>
vokiel
Rzeczywiście nie mogło działać, przy tworzeniu diva nie ustawiłem go jako elementu dokumentu, tylko ciąg znaków. Poprawiona wersja:
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  4. <link href="css/main.css" rel="stylesheet" type="text/css">
  5. <script type="text/javascript" src="js/swfobject.js"></script>
  6. <script type="text/javascript" src="js/script.js"></script>
  7. <script type="text/javascript" src="js/skrypt.js"></script>
  8. <script language="javascript">AC_FL_RunContent = 0;</script>
  9. <script src="pl/AC_RunActiveContent.js" language="javascript"></script>
  10. <script type="text/javascript" src="jquery.js"></script>
  11.  
  12. <script type="text/javascript">
  13.  
  14. $(document).ready(
  15. function(){
  16. // aby tworzyc wiecej inputow to trzeba by ustawic ich unikalne id, do tego bedzie ten licznik
  17. var licznik=1;
  18. $("a.add").click(function(){
  19. // pobierasz id kontenera
  20. var kontener = $(this).attr('id');
  21. kontener = kontener + "_div";
  22. // tworzysz diva (kontenera dla lablela inputa i linku do usuniecia
  23. var new_div = $('<div class="holder">');
  24. // tworzysz label i inputa
  25. var new_label_input = '<label for="input_'+licznik+'">Podaj imie:</label><input type="text" id="input_'+licznik+'" class="upload" />';
  26. // tworzysz nowy link
  27. var new_link = $('<a href="#" >usun</a>');
  28. // dodajesz funkcje ktora po kliknieciu w link usunie parent div (czyli calego diva z labelem inputem i tym kliknietym a)
  29. new_link.click(function(){
  30. $(this).parent("div").remove();
  31. return false;
  32. });
  33. // dodajesz do diva lablel i input
  34. new_div.append(new_label_input);
  35. // dodajesz do diva link
  36. new_div.append(new_link);
  37. // dodajesz do kontenera caly div
  38. $('#'+kontener).append(new_div);
  39. licznik++;
  40. return false;
  41. });
  42. });
  43. <style type="text/css">
  44. .holder {clear: both; width: 600px;}
  45. .holder label{width: 300px; float: left; display: inline;}
  46. .holder input{display: inline;}
  47. </head>
  48. <div id="kontener_na_nowe_inputy_div">
  49. <a href="#" class="add" id="kontener_na_nowe_inputy" title="Dodaj nowy input" >dodaj</a>
  50. </div>
  51. </body>
  52. </html>
gregi1
Wielkie dzieki, pomoglo. Nawet wiedzialem jak przerobic abym mial kilka przyciskow dodaj i kilka div'ow smile.gif Ale znow napotkalem na problem, otoz wyglada on nastepujaco, gdzies na forum juz pisalem o tym, ale chodzi o to: ze na stronie wyswietlam te div'y i przyciski dodaj w petli czyli mam ich kilka (to ma byc formularz kontaktowy) i jak mozna by zrobic aby po kliknieciu przycisku dodaj, wszystkie przyciski dodaj zostaly zablokowane tzn. po wysweitleniu jednego formularza nie dalo sie wysweitlic kolejnego.
Usuniecie licznika nie pomaga, bo po kliknieciu w dodaj zawsze jest dodawany formularz. Probowalem zrobic sobie zmienna na false i w funkcji zmieniac ja na true i przy pomocy tego sprawdzac if'em ktora jest jak na true to mialem wszystkie przyciski poblokowane.


Jeszcze jeden problem.
Czy ten link do usuwania (ta akcje mozna by jakos podpiac do buttona? Bo skoro mam przycisk submit to ladniej by to wygladalo jakby i usun bylo buttonem?
Po raz kolejny dzieki za pomoc.
vokiel
Cytat(gregi1 @ 16.11.2008, 11:06:37 ) *
(...)jak mozna by zrobic aby po kliknieciu przycisku dodaj, wszystkie przyciski dodaj zostaly zablokowane tzn. po wysweitleniu jednego formularza nie dalo sie wysweitlic kolejnego.(..)

Możesz dodac na poczatku sprawdzanie warunku w funkcji
  1. $("a.add").click(function(){
  2. if(added){
  3. // caly ten kod co byl
  4. // a na koncu
  5. var added=true;
  6. // no i tutaj przydaloby sie ukryc inne przyciski dodaj, albo nawet wszystkie w ogóle:
  7. $("a.add").toggle();
  8. // albo
  9. $("a.add").addClass("hide");
  10. }else{
  11. $("a.add").addClass("show");
  12. }
  13. }


Cytat(gregi1 @ 16.11.2008, 11:06:37 ) *
Czy ten link do usuwania (ta akcje mozna by jakos podpiac do buttona? Bo skoro mam przycisk submit to ladniej by to wygladalo jakby i usun bylo buttonem?

Możesz ostylować link, żeby wyglądał jak button, albo po prostu wstawić button.
  1. // tworzysz nowy link (zmieniasz tutaj)
  2. var new_link = $('<button class="usun"><span>usun</span></button>');
  3. // reszta juz może zostać tak jak było
  4. // dodajesz funkcje ktora po kliknieciu w link usunie parent div (czyli calego diva z labelem inputem i tym kliknietym a)
  5. new_link.click(function(){
  6. $(this).parent("div").remove();
  7. return false;
  8. });


Trochę inną rzecz robisz, niż myślałem, kilka formularzy, a nie tak jak podejrzewałem dodawanie pól do jednego
gregi1
Wiesz co jestem kompletnym laikiem ale nie dziala mi za bardzo to co podales:
Mam cos takiego:

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  4. <link href="css/main.css" rel="stylesheet" type="text/css">
  5. <script type="text/javascript" src="js/swfobject.js"></script>
  6. <script type="text/javascript" src="js/script.js"></script>
  7. <script type="text/javascript" src="js/skrypt.js"></script>
  8. <script language="javascript">AC_FL_RunContent = 0;</script>
  9. <script src="pl/AC_RunActiveContent.js" language="javascript"></script>
  10. <script type="text/javascript" src="jquery.js"></script>
  11.  
  12. <script type="text/javascript">
  13.  
  14.  
  15. $(document).ready(
  16. function(){
  17. // aby tworzyc wiecej inputow to trzeba by ustawic ich unikalne id, do tego bedzie ten licznik
  18. //var licznik=1;
  19. $("a.add").click(function(){
  20. if(added){
  21. // pobierasz id kontenera
  22. var kontener = $(this).attr('id');
  23. kontener = kontener + "_div";
  24. // tworzysz diva (kontenera dla lablela inputa i linku do usuniecia
  25. var new_div = $('<div class="holder">');
  26. // tworzysz label i inputa
  27. var new_label_input0 = '<label for="input"><center>WYŚLIJ ZAPYTANIE </center></label><br />';
  28. var new_label_input = '<label for="input">Podaj adres e-mail: </label><input style="margin-left:27px;" name="mail" type="text" id="input" class="upload" size="49" /><br />';
  29.  
  30. var new_label_input4 = '<label for="input">Treść wiadomości: </label><textarea style="margin-left:31px;margin-top:3px;" name="wiadomosc" id="input" class="upload" cols="46" rows="5"/></textarea><br />';
  31. var new_label_input5 = '<input style="margin-left:250px;margin-bottom:5px;" type="submit" name="wyslij_form" id="input" class="upload" value="Wyślij" />';
  32. // tworzysz nowy link
  33. var new_link = $('<a style="margin-left:20px;margin-bottom:5px; color:black" class="zwin_formularz" href="#" >Zrezygnuj</a>');
  34. // dodajesz funkcje ktora po kliknieciu w link usunie parent div (czyli calego diva z labelem inputem i tym kliknietym a)
  35. new_link.click(function(){
  36. $(this).parent("div").remove();
  37. return false;
  38. });
  39. // dodajesz do diva lablel i input
  40. new_div.append(new_label_input0);
  41. new_div.append(new_label_input);
  42. new_div.append(new_label_input4);
  43. new_div.append(new_label_input5);
  44.  
  45. // dodajesz do diva link
  46. new_div.append(new_link);
  47. // dodajesz do kontenera caly div
  48. $('#'+kontener).append(new_div);
  49. //licznik++;
  50.  
  51.  
  52. var added=true;
  53. // no i tutaj przydaloby sie ukryc inne przyciski dodaj, albo nawet wszystkie w ogóle:
  54. $("a.add").toggle();
  55. // albo
  56. return false;
  57. }
  58. });
  59. });
  60. <style type="text/css">
  61. .holder {clear: both; width: 600px;}
  62. .holder label{width: 300px; float: left; display: inline;}
  63. .holder input{display: inline;}
  64. </head>
  65. <div id="kontener_na_nowe_inputy_div">
  66.  
  67. </div>
  68.  
  69. <a href="#" class="add" id="kontener_na_nowe_inputy" title="Dodaj nowy input" >dodaj</a>
  70.  
  71.  
  72. <div id="kontener_na_nowe_inputy2_div">
  73.  
  74. </div>
  75.  
  76. <a href="#" class="add" id="kontener_na_nowe_inputy2" title="Dodaj nowy input" >dodaj</a>
  77. </body>
  78. </html>
vokiel
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  4. <link href="css/main.css" rel="stylesheet" type="text/css">
  5. <script type="text/javascript" src="jquery.js"></script>
  6.  
  7. <script type="text/javascript">
  8. $(document).ready(
  9. function(){
  10. $("a.add").click(function(){
  11. var kontener = $(this).attr('id');
  12. kontener = kontener + "_div";
  13. var new_div = $('<div class="holder">');
  14. var new_label_input = '<label for="input"><center>WYŚLIJ ZAPYTANIE </center></label><br />';
  15. new_label_input += '<label for="input">Podaj adres e-mail: </label><input style="margin-left:27px;" name="mail" type="text" id="input" class="upload" size="49" /><br />';
  16. new_label_input += '<label for="input">Treść wiadomości: </label><textarea style="margin-left:31px;margin-top:3px;" name="wiadomosc" id="input" class="upload" cols="46" rows="5"/></textarea><br />';
  17. new_label_input += '<input style="margin-left:250px;margin-bottom:5px;" type="submit" name="wyslij_form" id="input" class="upload" value="Wyślij" />';
  18. var new_link = $('<a style="margin-left:20px;margin-bottom:5px; color:black" class="zwin_formularz" href="#" >Zrezygnuj</a>');
  19. new_link.click(function(){
  20. $(this).parent("div").remove();
  21. $("a.add").toggle();
  22. return false;
  23. });
  24. new_div.append(new_label_input);
  25. new_div.append(new_link);
  26. $('#'+kontener).append(new_div);
  27.  
  28. var added=true;
  29. $("a.add").toggle();
  30. return false;
  31. });
  32. });
  33. <style type="text/css">
  34. .holder {clear: both; width: 600px;}
  35. .holder label{width: 300px; float: left; display: inline;}
  36. .holder input{display: inline;}
  37. </head>
  38. <div id="kontener_na_nowe_inputy_div">
  39. </div>
  40. <a href="#" class="add" id="kontener_na_nowe_inputy" title="Dodaj nowy input" >dodaj</a>
  41.  
  42.  
  43. <div id="kontener_na_nowe_inputy2_div">
  44. </div>
  45. <a href="#" class="add" id="kontener_na_nowe_inputy2" title="Dodaj nowy input" >dodaj</a>
  46. </body>
  47. </html>
gregi1
Wielkie dzieki za pomoc, to mam jeszcze prosbe, potrzebna mi jeszcze jedna rzecz, a narazie nie mam czasu na nauke js - bo ucze sie Flasha:) wiec bylbym wdzieczny za pomoc.

Domyslam sie ze to mozna by zrobic przy pomocy obecnego skryptu.

Chcialbym dodatkowo miec link "wiecej>>>" po kliknieciu ktorego w jego miejscu wyswietlaja sie slowa z bazy danych. Czyli wykonuje sie zapytanie sql i wyswieltaja sie wyniki, musi to byc bez przeladowania strony, bo inaczej strace rezultaty wyszukiwania. Dzieki za pomoc
gregi1
Cytat(erix @ 27.11.2008, 18:15:46 ) *

Dzieki za link, hmm a mozna w kod funkcji wstawic nie odzielny plik a jakas zmienna php? Moze wyjasnie to na przykladzie :

Mam cos takiego.......
  1. <?php
  2. ..........
  3. while ($row = mysql_fetch_array($result)) {
  4. echo $row[1];
  5.  
  6. //i tutaj chcialbym przycisk WIECEJ ktory wyswietli mi po kliknieciu $row[2] i $row[3].
  7. <a  href="#" class="wiecej" id="wiecej_'.$row[0].'" title="wyswietl wiecej" >WIECEJ</a><div id="wyswietl_wiecej">TUTAJ POWINNO MI SIE WSTAWIC $ROW[2] i $ROW[3].</div>
  8.  
  9. }
  10. ?>


Wiec jak powinien wygladac moj skrypt js?

Mam cos takiego:
  1. <?php
  2. <script type="text/javascript">
  3.        $(document).ready(function(){
  4.            $("a.wiecej").click(function(){
  5.            $("#wyswietl_wiecej).questionmark.gifquestionmark.gifquestionmark.gif?    
  6.                       //CO TUTAJ POWINNO BYC?
  7.            });
  8.        });
  9.        </script>
  10. ?>


Z gory dzieki za pomoc.
erix
To w click.

Kod
$.get('link.php', function(d){
$('#wyswietl_wiecej').html(d);
});
gregi1
Cytat(erix @ 27.11.2008, 22:14:13 ) *
To w click.

Kod
$.get('link.php', function(d){
$('#wyswietl_wiecej').html(d);
});


A co to jest to link.php?
erix
http://docs.jquery.com/Main_Page

Poszukaj, bo mi już ręce opadają... :S
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.