2008-10-30 4 views
1

J'ai l'obligation de produire un contrôle utilisateur Web (en C#) qui affichera un comportement différent lorsque cliqué selon que la touche majuscule (ou de contrôle) est enfoncée à l'époque. Le contrôle lui-même contiendra un ImageButton et/ou un lien hypertexte.Vérification de Maj + Clic ou Ctrl + Clic dans un contrôle utilisateur Web

Est-ce possible? Fondamentalement, si l'utilisateur connecté est un administrateur, j'ai besoin de leur permettre l'accès pour mettre à jour l'URL associée. Je ne veux pas avoir une page séparée pour cet administrateur car cela entraînerait de la confusion.

Merci à l'avance

Répondre

2

Que diriez-vous? here

Pour mettre en œuvre le Ctrl/Alt/Maj détection, vous pouvez utiliser les propriétés event.ctrlKey, event.altKey, event.shiftKey et la propriété spécifique Navigator dépréciée event.modifiers.

+0

J'ai trouvé quelques tentatives de Javascript mais rien qui a fonctionné jusqu'ici. Le code sur le lien que vous avez fourni est différent, donc je vais lui donner un bash - acclamations – DilbertDave

1

Votre contrôle doit émettre du javascript pour détecter les touches sur lesquelles vous avez cliqué.

Here is a primer from w3schools on events, here is a list of events de l'objet window que vous pouvez écouter (comme onkeydown pour les presses au clavier).

+0

Mes tentatives précédentes de Javascript pour résoudre ce problème ont été infructueuses, peut-être en raison de mon câblage incorrect. Je vais mettre ça ensemble avec le lien Marcs et voir où ça me mène. +1 – DilbertDave

+0

Si c'est le cas, vous pourriez vouloir juste poster ce qui n'a pas fonctionné pour vous afin que nous puissions aider avec cela! –

+0

Il est tellement piraté que je l'ai jonché! Je vais voir comment je vais avec un nouveau départ et poster ici de toute façon. – DilbertDave

1

Je déconseillerais cela car il va vous causer de graves problèmes avec différentes versions de navigateur.

Tant que vous ne ciblez pas explicitement un navigateur, vous effectuez des travaux de maintenance pour différents navigateurs en permanence.

Une façon de contourner cela est de trouver une bibliothèque Javascript pris en charge comme jQuery qui prend en charge ce comportement et laisser les mainteneurs de ces soins de la bibliothèque sur la compatibilité du navigateur (vous devez mettre à jour cette bibliothèque alors ..)

+0

La compatibilité croisée des navigateurs serait un problème, mais je n'ai aucune expérience avec JQuery. – DilbertDave

+0

J'ai noté jQuery à titre d'exemple. Il y a beaucoup de différents frameworks Javascript ici – Tigraine

0

Eh bien la Les «pouvoirs» ont décidé que l'approche Shift/Ctrl + Click était trop maladroite. Après une séance de remue-méninges, nous avons décidé d'afficher un petit bouton "Modifier" à côté du contrôle. Cela ne sera visible que pour les utilisateurs administrateurs et je l'ai rassemblé en deux heures environ.

Merci d'avoir pris le temps de nous faire part de vos commentaires.

Est-ce que quelqu'un avec un haut représentant peut fermer cette question pour moi - merci.

Questions connexes