Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX]upload i zastosowanie kilku input file
Forum PHP.pl > Forum > Przedszkole
kubax33
Poniższe rozwiązanie to dynamiczny upload jednak funkcjonuje on tylko do jednego input file, a chciałbym postawić kilka input file, aby każdego osobno ładowało.
Jak to zrobić?

  1. <!doctype html>
  2. <head>
  3. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script>
  4. <script src="http://malsup.github.com/jquery.form.js"></script>
  5. <style>
  6.  
  7. #progress
  8. {
  9. position:relative;
  10. width:200px;
  11. border: 1px solid #ddd;
  12. padding: 1px;
  13. border-radius: 3px;
  14. }
  15. #bar
  16. {
  17. background-color: #B4F5B4;
  18. width:0%;
  19. height:20px;
  20. border-radius: 3px;
  21. }
  22.  
  23. #percent
  24. {
  25. position:absolute;
  26. display:inline-block;
  27. top:3px;
  28. left:48%;
  29. }
  30. </style>
  31. </head>
  32. <body>
  33.  
  34. <form id="myForm" name=upload action="upload.php" method="post" enctype="multipart/form-data">
  35. <input type="file" size="60" name="plik">
  36. <input type="submit" value="Dodaj plik">
  37. <input type="hidden" name="MAX_FILE_SIZE" value="1000000">
  38. </form>
  39.  
  40.  
  41.  
  42.  
  43. <div id="progress">
  44. <div id="bar"></div>
  45. <div id="percent">0%</div >
  46. </div>
  47. <br/>
  48.  
  49. <div id="message"></div>
  50.  
  51.  
  52. <script>
  53. $(document).ready(function()
  54. {
  55.  
  56. var options = {
  57. beforeSend: function()
  58. {
  59. $("#progress").show();
  60. //clear everything
  61. $("#bar").width('0%');
  62. $("#message").html("");
  63. $("#percent").html("0%");
  64. },
  65. uploadProgress: function(event, position, total, percentComplete)
  66. {
  67. $("#bar").width(percentComplete+'%');
  68. $("#percent").html(percentComplete+'%');
  69.  
  70.  
  71. },
  72. success: function()
  73. {
  74. $("#bar").width('100%');
  75. $("#percent").html('100%');
  76.  
  77. },
  78. complete: function(response)
  79. {
  80. $("#message").html("<font color='green'>"+response.responseText+"</font>");
  81. },
  82. error: function()
  83. {
  84. $("#message").html("<font color='red'> BŁĄD: nie można przesyłać pliku</font>");
  85.  
  86. }
  87.  
  88. };
  89.  
  90. $("#myForm").ajaxForm(options);
  91.  
  92. });
  93.  
  94. </script>
  95. </body>
  96.  
  97.  
  98. </html>
nospor
Przeciez na stronie pluginu masz przyklad z kilkoma plikami.
http://malsup.com/jquery/form/progress3.html
kubax33
dziękuje przydatne. Jednak jak chciałym, aby dla każdego input file był osobny pasek wgrywania... ?
nospor
No to chyba nie przy pomocy tego pluginu..... Widac, ze nie udostepnia takiej funkcjonalnosci
kubax33
co podobnego byś polecał?
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.