Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dynamicznie dodawane pola <input type=file>
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
lucks
chciałbym zeby uzytkownik mogł dodać dowolną liczbę zalączników, ale zeby nowe puste pole wyświetlało sie dopiero po załadowaniu poprzedniego, tak aby nie umieszczać na sztywno powiedzmy 10 pol
nospor
Temat: dynamiczny formularz
i jeszcze mala podpowiedź:
Kod
            var diw = document.getElementById('diw');
            
            var file = document.createElement('input');
            file.type="file";
            diw.appendChild(file);
lucks
kurcze w js sobie nie radzę, mozna pobrać gdzies taki skrypcik?
Cysiaczek
No to już musisz poszukać smile.gif najlepiej w wyszukiwarce kojarzącej się z narciarzami winksmiley.jpg
lucks
ok mam, udało mi się zrobić samemu (tzn dzięki wam w zasadzie), tylko jeszcze jeden problem chodzi mi o to zeby generowały sie pola z róznymi atrybutami name tak zebym mogł pozniej w php je powyciagac
np.
name=file1
name=file2
itd....


i jeszcze jedno jak zrobić zeby wywoływać funkcję tworzenia pola w momencie gdy zostanie dodany plik do pola stworzonego przez tę funkcje

Kod
function AddFile(){
            var diw = document.getElementById('diw');
            var file = document.createElement('input');
            file.type="file";
            var br = document.createElement("br");
            diw.appendChild(br);
            diw.appendChild(file);    
                      file.onchange=AddFile();        // <- exclamation.gif!!!!!!!!
        }


chciałbym uniknąc buttonów
revyag
Zrób dodatkową zmienną która będzie zliczać inputy.
Kod
var inums = 0;
function AddFile() {
    var diw = document.getElementById('diw');
    var file = document.createElement('input');
    file.type="file";
    filetype.name='file'+inums;
    inums++;
    var br = document.createElement("br");
    diw.appendChild(br);
    diw.appendChild(file);    
    file.addEventListener('onchange',AddFile(),false);
}
lucks
super działa, jeszcze tylko chciałbym uzyć zmiennej inums w php do obracania pętlą zeby zapisać pliki
da rade jakoś ja przekazać z funkcji js do formularza w tym samym pliku?
revyag
Można kombinować z nadawaniem wartości jakiemuś ukrytemu polu. Np.
  1. <input type="hidden" id="inums" name="inums" value="" />

Kod
....
inums++;
document.getElementById("inums").value = inums;
......

Wtedy w php, może zrobić tak:
  1. <?php
  2. for($i = 0; $i < $_POST["inums"]; $i++) {
  3. ....
  4. }
  5. ?>
lucks
o to chodziło, działa super, dzieki
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.