[Jquery] probleme pour capter un li
Bonjour,
voila je recherche a partir de la liste de checkbox générée faire un traitement sur chaque checkbox séléctionnées.
c'est ce que fait tres ce script, par contre je n'arrive pas a capter le li en cours et de lui attribuer la class wait ....
egalement je n'est pas reussi lors du traitement bloquer toutes les autres checkbox jusqu'a la fin du traitement.
sinon au lieu de le faire sur un click j'ai essayer de le faire avec un submit mais sans succés.
voici mon code :
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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Test</title>
<script type="text/javascript" src="lib/js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
function traitementOk(reponse) {
$('#msg').fadeIn("slow").animate({opacity: 1.0},5000).fadeOut("slow").empty().append(reponse);
}
function traitementFrom(s) {
jQuery.ajax({
type: "POST",
url: "traitement.php",
data: s,
error: function() {
alerte("Probleme de submit");
console.log("Probleme de submit");
},
success: traitementOk
});
$(".test > li").ajaxStart(function(request, setting) { $(this).addClass('wait') });
$(this).ajaxStop(function(request, setting) { $(".test > li").addClass('test') });
}
function traitement() {
var fields = $(":input").serializeArray();
$.each(fields, function(attribut, valeur){
traitementFrom(valeur);
});
}
$("#formTable").click(function() {
traitement();
});
});
</script>
<style type="text/css">
LI.wait { background: url(images/spinner.gif) left top no-repeat; }
</style>
</head>
<body>
<div id="msg"></div>
<form id="formTable" name="formTable">
<ul class="test">
<?php
srand();
$rand = rand(0, 20);
for($i = 0; $i < $rand; $i++) {
echo " <li><input type=\"checkbox\" name=\"test[]\" id=\"input$i\" /><label for=\"input$i\">CheckBox $i</label></li>\n";
}
?>
</ul>
<br /><input name="valide" type="submit" value="Valider" />
</form>
</body>
</html> |
Merci par avance