Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dynamiczne dodawanie
Forum PHP.pl > Forum > PHP
GuruNetYT
Witam. Znalazłem taki skypt.

Kod
<style type="text/css">
input.upload { display: block; }
</style>
<form action="jakisplik.php" method="post">
<div id="pliki">
<input type="file" name="plik" class="upload" />
</div>
<div>
<input type="button" value="Załącz kolejny plik" o
<input type="submit" value="Wyślij" />
</div>
</form>
<script type="text/javascript">
<!--
function dodaj_element(kontener){
var znacznik = document.createElement('input');
znacznik.setAttribute('type', 'file');
znacznik.setAttribute('name', 'plik');
znacznik.className = 'upload';
var kontener = document.getElementById(kontener);
kontener.appendChild(znacznik);
}
//-->
</script>


Jest w nim wszystko ok nie licząc tego
że kolejno dodawane formularze
mają takie same imiona (name) jak
zminić wartość name z "plik" na np
"plik2", "plik3" itd w następnych
formularzach. Proszę o pomoc.
kaem
rozwiązaniem jest tablica:
  1. name="plik[]"
Uriziel01
To raczej nie są czasy gdy używanie czystego JS jest popularne. Wykonanie tego na JQuery czy jakims innym FW (mootools, prototype) jest jeszcze prostsze, nie mówiąc już o puźniejszym manipulowaniu tymi elementami.
  1. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
  2. <div id='my_form'>
  3. <input type='button' name='dodaj' value='Dodaj pole'><br/>
  4. Plik1:<input type='file' name='Plik1'/>
  5. </div>
  6. $(document).ready(function() {
  7. $('input[name="dodaj"]').click(function(){
  8. $('#my_form').append("<br/>Plik" + ($('input[type=\"file\"]').size() + 1) + ":<input type='file' name='Plik" + ($('input[type=\"file\"]').size() + 1) + "'/>");
  9. });
  10. });
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.