Comme le dit le titre, je continue d'être "indéfini" lorsque j'essaie d'obtenir l'attribut id d'un élément, ce que je veux faire est de remplacer un élément avec une zone de saisie lorsque la valeur est "autre".
Voici le code:
function showHideOther(obj){
var sel = obj.options[obj.selectedIndex].value;
var ID = $(this).attr("id");
alert(ID);
if(sel=='other'){
$(this).html("<input type='text' name='" + ID + "' id='" + ID + "' />");
}else{
$(this).css({'display' : 'none'});
}
}
Le code HTML:
<span class='left'><label for='race'>Race: </label></span>
<span class='right'><select name='race' id='race' onchange='showHideOther(this);'>
<option>Select one</option>
<option>one</option>
<option>two</option>
<option>three</option>
<option value="other">Other</option>
</select>
</span>
Il est probablement quelque chose de petit que je ne remarquais, ce que je fais mal?
Merci d'avance!
"this" fait toujours référence à l'objet sur lequel vous travaillez. Et il peut être utilisé n'importe où. Bien sûr, si vous savez ce que vous faites. – GerManson
au lieu de '$ (this) .href', vous pouvez juste' this.href' et aussi 'obj.id' ... btw,' obj.attr ('id'); 'devrait être' $ (obj) .attr ('id'); 'basé sur OP ... – Reigel