Existe-t-il un moyen de déclencher un événement de clic sur un élément SELECT dans Chrome même si l'option sélectionnée ne change pas?

J'ai un élément SELECT dont le contenu (éléments OPTION) est chargé via AJAX et inséré sur prêt et quand un SELECT différent est modifié. Les deux SELECTS ont deux éléments OPTION ajoutés à la liste des chargés via AJAX:

<option disabled="disabled"></option> <option value="edit">Edit&hellip;</option> 

J'ai eu l'engagement de l'événement jQuery suivant dans le prêt prêt:

 $('#theSelect').bind('change click', handleSelection); 

La méthode handleSelection() intercepte alors l'option "Edition …" sélectionnée, passe la sélection à l'option précédemment sélectionnée et déclenche d'autres fonctions qui affichent une boîte de dialogue qui permet à l'utilisateur de modifier les options dans le menu. Cela fonctionne très bien dans Safari et Chrome, mais il y a un cas qui ne fonctionne pas sur Chrome: s'il n'y a pas d'options de chargement via AJAX, il est donc possible que les options désactivées et "Editer …" ne soient pas activées. Événement sur l'option "Edition …" sélectionnée. Cela semble être parce que, dans Chrome, l'option "Modifier …" est sélectionnée par défaut (car c'est la première option activée; Safari, d'autre part, sélectionne l'option désactivée car c'est la première option) et cela ne fait que des feux Modifiez les événements pour les éléments SELECT, pas les clics (pourquoi j'écoute à la fois cliquez et changez), mais lorsque "Edit …" est déjà sélectionné, il ne change pas, donc ne lance pas un événement.

Alors, comment puis-je contourner cela? Dois-je intercepter tous les événements de mise au point et faire le travail sale pour interpréter ce qui se passe? Existe-t-il un moyen d'obtenir que Chrome sélectionne l'option désactivée au lieu de "Modifier …"?

À la suggestion de Slavo dans les commentaires , j'ai obligé tous les navigateurs à sélectionner la première option sur l'injection AJAX:

 // force select the first option (fixes a Chrome issue) $('#theSelect option:selected').removeAttr('selected') $('#theSelect option:first-child').attr('selected', 'selected'); 

Cela standardise le comportement du navigateur et permet à Chrome de sélectionner l'option désactivée au lieu de la mise en défaut de l'option "Modifier …".