Pour répondre à ta question, il nous faudrait la conception de la bdd, car en effet, il faut un id unique par input, et utiliser this en jquery.
Il faut que tu cherches un élément unique à chaque sujet, peut être même l'id du sujet, et l'insérer dans le code html (<input type="" id="<?php echo $id; ?>")
Ensuite en Js, tu pourras récupérer l'id de l'élément courant.
et pour mon input files, le id est super important car il y a jquery qui travaille avec.
<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: $form.attr('action'),
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) {
$('#result > pre').html(JSON.stringify(response, undefined, 4));
}
});
});
// A change sélection de fichier
$('#my_form').find('input[name="image"]').on('change', function (e) {
var files = $(this)[0].files;
if (files.length > 0) {
// On part du principe qu'il n'y qu'un seul fichier
// étant donné que l'on a pas renseigné l'attribut "multiple"
var file = files[0],
$image_preview = $('#image_preview');
// Ici on injecte les informations recoltées sur le fichier pour l'utilisateur
$image_preview.find('.thumbnail').removeClass('hidden');
$image_preview.find('img').attr('src', window.URL.createObjectURL(file));
//$image_preview.find('h4').html(file.name);
//$image_preview.find('.caption p:first').html(file.size +' bytes');
$('#aHidden').addClass('hidden');
}
});
// Bouton "Annuler"
$('#image_preview').find('button[type="button"]').on('click', function (e) {
e.preventDefault();
$('#my_form').find('input[name="image"]').val('');
$('#image_preview').find('.thumbnail').addClass('hidden');
$('#aHidden').removeClass('hidden');
});
});
</script>
- Edité par FrançoisDuchateau 18 janvier 2017 à 17:39:41
Savoir que l'on est bête est déjà très intélligent.
C'est la que mon jquery blesse. Je ne sais absolument pas comment m'y prendre pour que ma fonction agisse sur le bon input files et non sur le premier qu'il trouve. Une piste peut être ?
Savoir que l'on est bête est déjà très intélligent.
Les classes ou les id, pour le jquery cela ne change rien, par contre, pour ton html/css, le id qui ne sont pas unique ne sont pas conseillé.
Jquery et inputs.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.