2009-04-28 6 views
0

Mon html est tel:Comment puis-je sélectionner un jquery html-select

<select id="slctDiv2" class="slct"><option value="0">Any</option> 
<option value="1">Administration</option><option value="2">Collections</option>  
<option value="3">Distribution</option><option value="4">Engineering</option> 
<option value="5">Treatment</option></select> 

Comment puis-je obtenir l'ID de l'élément sélectionné (dans ce cas « slctDiv2 ») si je trouve l'option sélectionnée par jquery .

$('#slctDiv1,#slctDiv2').change(function(){ 

    if($(this).parent().attr('id')=='slctDiv2'){ 
    //do this 
    }else{ 
    //do that 
    } 
}); 

L'utilisation de la fonction parente ne fonctionne pas.

Répondre

1

Je crois que vous avez déjà la sélection (selon l'ID dans le code HTML et les ID que vous avez dans la JS), pas l'option, de sorte que vous ne devez faire:

$('#slctDiv1,#slctDiv2').change(function(){ 
    if($(this).attr('id')=='slctDiv2'){ //do this 
    }else{ //do that 
    } 
}); 
+0

Oui, c'est l'élément de sélection qui déclenche l'événement, pas l'élément d'option –

+0

$ ('# slctDiv1, # slctDiv2'). Change (function() {if ($ (this) .parent(). Attr (' id ') ==' slctDiv2 ') {alert (' got here ');} else {// fais ça}}); Lorsque je change le code, l'alerte n'est jamais appelée. Je dois faire quelque chose de stupide. –

0

$ (» # slctDiv2 "). val();

0

Wow! Parce que je n'ai pas réussi à poster mon code entier, vous ne saviez pas que, après l'événement de modification, je faisais un $ .getJSON alors mon $ (this) faisait référence au xhr. Duh. Merci pour (et désolé de perdre) votre temps!

Questions connexes