J'ai une boucle while do PHP pour générer des champs de saisie de texte, radio et checkbox. Les champs texte et radio sont désactivés par défaut et je veux les activer en cochant la case correspondante. J'ai assigné des identifiants aléatoires et essayé de nombreuses solutions jQuery mais j'ai toujours des problèmes.Activer/Désactiver les entrées de texte et de radio générées aléatoirement avec la case à cocher dans jQuery
code:
<?php
$query = "SELECT * FROM `test` ";
$result = mysql_query($query);
$count = 0;
do{
$row = mysql_fetch_array($result);
if($row){
$id = $row['id'];
$name = $row['name'];
?>
<tr>
<td><?php echo $name; ?></td>
<td><input type="text" id="txt_<?php echo $count; ?>" class="txt form-control" name="txt" style="width:200px;" disabled /></td>
<td><input type="radio" id="radio_<?php echo $count; ?>" class="rdo" name="rdo<?php echo $count; ?>" value="yes" disabled /></td>
<td><input type="radio" id="radio_<?php echo $count; ?>" class="rdo" name="rdo<?php echo $count; ?>" value="no" disabled /></td>
<td><input type="checkbox" id="check_<?php echo $count; ?>" class="checks" name="check" /></td>
</tr>
<?php
$count = $count + 1;
}
}
while($row);
?>
jQuery:
<script>
$('#check_<?php echo $count; ?>').on('change', function(){
if($(this).is(':checked')){
$('#txt_<?php echo $count; ?>').prop('disabled', false);
$('#radio_<?php echo $count; ?>').prop('disabled', false);
}else{
$('#txt_<?php echo $count; ?>').prop('disabled', true);
$('#radio_<?php echo $count; ?>').prop('disabled', true);
}
});
</script>
Ma solution:
$(function() {
$('input[type=checkbox]').change(function() {
if (this.checked) {
$(this).closest('tr').find('input[type=text]').prop('disabled', false);
$(this).closest('tr').find('input[type=radio]').prop('disabled', false);
} else {
$(this).closest('tr').find('input[type=text]').prop('disabled', true);
$(this).closest('tr').find('input[type=radio]').prop('disabled', true);
}
});
});
Cette fonction Travaillé charmes :)
Pouvez-vous montrer votre code jquery ce que vous avez essayé jusqu'à présent ?? –
J'ai essayé environ 5 codes qui fonctionnent pour les champs d'entrée simples mais échouent car je leur attribue des ID aléatoires – Simbolae