Récupérer un valeur input file d'une modal
Bonjour à tous,
Voici mon soucis :
Je fais sélectionner un fichier dans un input file dans une modale. Hors je n'arrive pas à récupérer la valeur lors de la validation dans la fenêtre parent.
Voici mon formulaire :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
<form id="my_form" method="post" action="process_form.php" enctype="multipart/form-data">
<input type="text" name="title">
<textarea name="content"></textarea>
<button class="btn btn-primary " type="button" onclick='image()'><i class="fa fa-upload"></i> <span class="bold">Image</span></button>
<div class="modal inmodal" id="infoImage" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content animated bounceInRight">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
<i class="fa fa-info modal-icon"></i>
<h4 class="modal-title">Choisissez une belle image </h4>
<small class="font-bold"></small>
</div>
<div class="modal-body">
<p></p>
<div class="form-group">
<input type="file" name="monfichier" accept="image/*">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-white" id="annulerChoixClub">Annuler</button>
<button type="button" class="btn btn-primary" id="validerChoixClub" onclick="hide_modal()">Valider</button>
</div>
</div>
</div>
</div>
</div>
<button type="submit">OK</button>
</form> |
Voici mon AJAX :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
<script>
$(function () {
$('#my_form').on('submit', function (e) {
// On empêche le navigateur de soumettre le formulaire
e.preventDefault();
var $form = $(this);
var formdata = (window.FormData) ? new FormData($form[0]) : null;
var data = (formdata !== null) ? formdata : $form.serialize();
$.ajax({
url:"uploadv3.php",
type: $form.attr('method'),
contentType: false, // obligatoire pour de l'upload
processData: false, // obligatoire pour de l'upload
dataType: 'json', // selon le retour attendu
data: data,
success: function (response) {
// La réponse du serveur
}
});
});
}); |
Cela n'envoi aucune image
Pour info quand j'enlève l'input du modal cela marche très bien.
Je ne comprend pas car le modal faisant partie de la page je devrais envoyer l'ensemble du formulaire ....
Quelqu'un aurait il une idée ?
Cordialement,