2009-06-05 7 views
0

Pour être précis, j'ai un formulaire de recherche avec un autocompleteextender en haut. Lorsque vous tapez une chaîne, elle se termine automatiquement avec des correspondances dans une liste déroulante comme prévu.ASP.NET Ajax - Le contrôle Autocompleteextender apparaît derrière d'autres contrôles

Le problème est que quelques contrôles SliderExtender plus bas dans le formulaire apparaissent au-dessus de la liste déroulante de saisie semi-automatique (elle ne couvre pas ces contrôles). J'ai regardé autour de moi mais je ne trouve pas encore de réponse. Il semble que le problème peut se produire avec d'autres contrôles et non spécifique à ceux-ci.

Répondre

6

J'ai trouvé une réponse simple qui fonctionne pour moi et j'avais oublié. Je viens de passer le positionnement à absolu dans la classe CSS pour l'AutoCompleteExtender et ensuite définir l'index Z pour cela. La liste de suggestions pour la saisie semi-automatique apparaît maintenant au-dessus de tous les autres éléments.

code pour le contrôle dans .aspx J'ai appliqué mon propre CSS:

<cc1:AutoCompleteExtender ID="componentID_AutoCompleteExtender" runat="server" 
     TargetControlID="componentID" 
     ServicePath="ImageComponentService.asmx" 
     ServiceMethod="GetComponentMatches" 
     MinimumPrefixLength="3" 
     CompletionInterval="1000" 
     EnableCaching="true" 
     CompletionSetCount="10" 
     CompletionListCssClass="CompletionListCssClass" 
     CompletionListItemCssClass="CompletionListItemCssClass" 
     CompletionListHighlightedItemCssClass="CompletionListHighlightedItemCssClass" 
     OnClientItemSelected="itemSelected" 
     Enabled="true" FirstRowSelected="true" 
     BehaviorID="AutoCompleteEx"> 
    </cc1:AutoCompleteExtender> 

CSS

.CompletionListCssClass 
{ 
    font-size: 11px; 
    color: #000; 
    padding: 3px 5px; 
    border: 1px solid #999; 
    background: #fff; 
    width: 300px; 
    float: left; 
    z-index: 1; 
    position:absolute; 
    margin-left:0px; 
} 
Questions connexes