Je suis actuellement en train d'assembler quelques jQuery qui vont activer slideDown() quand on clique sur un élément qui est généré par js.
Voici ma fonction:
$('.radiowrap').delegate("span[title='yes']", "click", function() {
$('.radiowrap').next('.secondq:first').slideDown('medium');
});
Cela fonctionne bien, mais seulement si je spécifie l'élément (comme indiqué ci-dessus) activant donc chaque élément correspondant. Si j'utilise $ (this) comme ceci:
$('.radiowrap').delegate("span[title='yes']", "click", function() {
$(this).next('.secondq:first').slideDown('medium');
});
Le code ne fonctionne pas ... est-ce que quelqu'un a une solution? Voici un extrait de mon code HTML:
<div class="option radio">
<h2 class="block">Do you have a hot water tank?</h2>
<div class="radiowrap">
<div class="radiocont">
<label>Yes</label>
<input type="radio" class="styled" value="yes" name="watertank" />
</div>
<div class="radiocont">
<label>No</label>
<input type="radio" class="styled" value="no" name="watertank" />
</div>
</div>
<div class="secondq" style="display:none;">
<h2>What type of water tank is it?</h2>
<div class="radiowrap">
<div class="radiocont">
<label>Steel</label>
<input type="radio" class="styled" value="steel" name="watertanktype" />
</div>
<div class="radiocont">
<label>Fibreglass</label>
<input type="radio" class="styled" value="Fibreglass" name="watertanktype" />
</div>
</div>
<h2 align="left">How much insulation does it have?</h2>
<input type="text" align="right" name="bonus" class="value" disabled="disabled" />
<div class="slidewrap">
<div class="sliderMm slider"></div>
</div>
</div>
</div>
'this' se référera toujours à l'élément' span [title = 'yes'] '. –
Juste pour vous laisser, l'extrait de code HTML que vous avez dans la question n'a pas de balises span avec un attribut de titre de «oui». Cependant, la réponse ci-dessous devrait être ce que vous cherchez. –