Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Dodawanie kolejnych textboxów po kliknięciu na button
danon198901
post
Post #1





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 26.09.2012

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


Witam,

z javascript miałem bardzo mało do czynienia (głównie PHP), ale uczę się na bieżąco robiąc własne projekty. W chwili obecnej mam ciężki orzech do rozgryzienia. Chciałbym dodać opcję, że po kliknięciu użytkownikowi pojawiają się 2 nowe textboxy obrazujące współrzędne 'x' oraz 'y'.

A więc jest sobie na stronce button po kliknięciu na który textboxy mają być dodawane i kolejno otrzymywać inne name oraz id (np.: x1,x2,y1,y2 itd) ze względu na dalszą obsługę przez interpreter php. Czyli pierwsze kliknięcie = jeden textbox X oraz Y. Dziesięć kliknięć na button = 10x textbox X oraz 10x textbox Y.

Z wcześniejszego tematu na forum dowiedziałem się mniej więcej jak dodawać przez JS elementy HTML - jednak nadal nie do końca to "kminię".

Przykładowy kod dodający buttona, wyszperany w sieci:
  1. <button onclick="myFunction()">Try it</button>
  2.  
  3.  
  4. function myFunction()
  5. {
  6. var btn=document.createElement("BUTTON");
  7. var t=document.createTextNode("CLICK ME");
  8. btn.appendChild(t);
  9. document.body.appendChild(btn);
  10. };
  11.  


Mi chodzi dokładnie o coś takiego, z tym, że chcę, aby kolejne textboxy otrzymywały inne 'name' oraz 'id'. Może ktoś zna jakiś ciekawy tutorial odnośnie tego zagadnienia, bo ja się w google naszperałem, a w kursach online po prostu tego brakuje.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
danon198901
post
Post #2





Grupa: Zarejestrowani
Postów: 35
Pomógł: 0
Dołączył: 26.09.2012

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


super, dzięki za wskazówki;) Dokładnie mówiąc o textbox'ie chodzi mi właśnie o <input type="text" />
Wklepałem sobie:

  1. var btn=document.createElement("INPUT");
  2. btn.name = "przycisk";
  3. btn.id = "przycisk";
  4. document.body.appendChild(btn);


i działa:) Pytanie tylko skąd javascript wie, żeby generować type "text" skoro tego nie podałem? Przecież nie podałem <input type="text" />, więc równie dobrze może to być button/submit/checkbox/radio itp itd


Na kwestię id/name miał bym pomysł, dzięki któremu odbiór i późniejsza obróka informacji byłaby łatwiejsza. Wystarczyłoby wrzucić zmienna licznikowa, która zliczałaby ilość tych klików na button w wyniku czego każdy input typu "text" nazywał by się np. "text"+i+"". Później w php mógłbym napisać pętelkę for (i=1; i<=licznik; i++) {odebrać elementy z tablicy $_POST i wykonać na niej działanie}. Kwestia jest taka, że nie bardzo wiem jak ten licznik zaimplementować. Jeśli chodzi o zwykłą Jave to deklarowanie zmiennych nie inicjowanych żadnymi wartościami, kończyło się tym, że miały one wartości domyśle. Czyli np. int a; powodowało, że a posiadało 0. Wystarczyło sobie dopisać do obsługi button'a 'a=a+1;' i grało, natomiast w javascript wartości niezainicjalizowana posiada wartość "undefined", a więc muszę na początku dodać np. var a=0; w wyniku czego za każdym kliknięciem zmienna ta będzie zawsze inicjalizowana od nowa i nie zmieni wartości. No i koniec końców nie wiem jak w JS doprowadzić do tego, żeby wartość kliknięć była zliczana:( Any idea?
Go to the top of the page
+Quote Post
Pawel_W
post
Post #3





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

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


Cytat(danon198901 @ 23.03.2013, 23:06:44 ) *
Pytanie tylko skąd javascript wie, żeby generować type "text" skoro tego nie podałem? Przecież nie podałem <input type="text" />, więc równie dobrze może to być button/submit/checkbox/radio itp itd

odpowiedź na Twoje pytanie:
  1. <input />

zobacz co się stanie (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 2.10.2025 - 20:11