2009-11-04 11 views
0

Je cherche des idées sur ce que j'espérais implémenter. J'ai une étiquette d'asp que je voudrais placer une limite maximum pour la quantité de caractères visibles dedans (pas une limite de caractères sur les caractères totaux étant insérés dans l'étiquette mais juste pour ce qui est visible dans l'étiquette). Ensuite, sur un pointeur de la souris, je voudrais qu'il affiche tous les caractères qui ont été insérés dans l'étiquette dans une sorte de hoverbox/popup. Le problème est que je ne veux pas que les utilisateurs tapent un roman et qu'il finisse par pousser les autres éléments sur ma page.asp.net survole l'étiquette

Merci.

Répondre

4

La définition de la propriété ToolTip avec le texte intégral et la propriété Text sur le texte affiché réel via le code derrière est probablement la meilleure façon de gérer cela.

var item = db.Items.... (select the item to display) 
myItemLabel.Text = item.Name.Substring(0, 10); 
myItemLabel.ToolTip = item.Name; 

combiner avec le plugin jQuery Tooltip (ou similaire) pour obtenir de meilleurs effets.

myItemLabel.CssClass = "has-tooltip"; 

Puis dans votre balisage.

<script type="text/javascript" src="scripts/jquery-1.3.2.js"></script> 
<script type="text/javascript" src="scripts/jquery.tooltip.js"></script> 
<script type="text/javascript"> 
$(function() { 
    $('.has-tooltip').tooltip(); 
}); 
</script> 
1

Le contrôle d'étiquette a une propriété .TooTip que vous pouvez utiliser pour cela.

Vous pouvez également écrire du javascript pour afficher un élément "caché" (display: none;) pour votre étiquette.

+0

.ToolTip - et c'est un bon mot-clé pour aller avec: si vous recherchez « JavaScript infobulles », vous devriez trouver un certain nombre de personnes qui ont mis en œuvre ce que vous cherchez. – Tom