Comment désactiver le comportement de soumission de asp: ImageButton?
J'ai un bouton image dans une page qui peut être déclenché sur le clic de souris, par défaut elle est déclenchée sur enter appuyez sur aussi qui je veux désactiver.
Je sais à propos de "UseSubmitBehaviour" attribut en asp:Button, est-il un moyen de faire la même chose en asp:ImageButton?
source d'informationauteur Manish Basantani
Vous devez vous connecter pour publier un commentaire.
Je suppose que vous avez une sorte de contrôles d'entrée et vous ne voulez pas entrer touche à l'auto soumettre lorsqu'un utilisateur accident appuie sur la touche entrée. Si oui, vous pouvez joindre un javascript onkeypress événement à chaque commande que vous souhaitez désactiver ce comportement.
Si vous avez besoin de désactiver la touche Entrée de la soumission de formulaire complètement. cas d'utilisation de la OnKeyDown gestionnaire sur
<body>
tag sur votre page.Le code javascript:
Avec JQuery ce serait beaucoup plus propre, plus facile et la méthode recommandée. Vous pourriez faire une extension avec:
Si vous mettez votre contenu dans un asp:Panel vous pouvez utiliser le DefaultButton de Propriété pour définir un autre bouton par défaut pour votre bouton image ne sera pas cliqué.
Dans cet exemple, le btn_Test2 sera activé lorsque vous appuyez sur entrée, où normalement btn_Test1 serait cliqué
Le formulaire d'exécuter le premier bouton, il trouve sur la page lorsque vous appuyez sur entrée. Si vous pouvez déplacer le
ImageButton
en bas de la page de sorte qu'il n'est plus le premier bouton dans le balisage, et utiliser les CSS pour positionner correctement, cela devrait résoudre votre problème. Je fixe exactement la même chose la semaine dernière et cela a fonctionné pour moi. Je suis allé avec cette solution car elle ne nécessite JavaScript afin de fonctionner correctement.Utilisation Kelsey Réponse (Cette réponse est wiki ed)
...mais s'il vous plaît noter quelques petites choses quand vous le mettre en œuvre.
Je vous recommande la bonne vieille méthode javascript si vous n'êtes pas déjà en utilisant jQuery. si vous n'avez que de la méthode, il suffit de retourner (keynum != 13) ne pas faire quelque chose de stupide comme si(vrai) return true; else return false;
Vous n'avez pas à affecter onkeydown du code derrière. Qui peut être fait dans le balisage et c'est beaucoup plus propre quand vous le faites.
Ne pas désactiver la touche entrée de votre forme. Vous pouvez le faire dans votre uniquement les entrées, mais si vous le faites dans l'ensemble du formulaire, vous ne serez pas en mesure d'ajouter un retour chariot dans un textarea.
Si vous utilisez jQuery, je vous recommande l'ajout d'une classe CSS appelé "disableEnterKey" et en l'assignant à vos éléments de formulaire que vous souhaitez désactiver, puis l'appel de Kelsey méthode jQuery $(".disableEnterKey") dans le document de prêt.
Ne réponds pas, trop semblable à quelqu'un, même si vous n'êtes pas entièrement d'accord avec la réponse. Et même si la réponse était simple et des milliers de personnes ont probablement fait la samething. C'est la "copie". Qui est similaire à un "cutter" ou un "tattle tale"... ce qui est mauvais.
(cette réponse a été wiki de la communauté ed que cette question thread a obtenu stupide)
Utiliser une page asp:image à la place. Ensuite, placez un peu de code javascript dans le onclick "
javascript:document.getElementById('imageClicked').setAttribute('value', 'true'); document.myform.submit();
"D'un champ caché de la valeur (à l'aide de javascript) pour dire au serveur de code côté que l'image a été cliqué.
Puis, à la fin de la manipulation de la publication sur le serveur réinitialiser le hiddenField:
vous voulez quelque chose comme
Voir le lien suivant.Ce problème peut être résolu pour tous les défaut du bouton soumettre problème.
http://weblog.kevinattard.com/2011/08/aspnet-disable-submit-form-on-enter-key.html
Veuillez Utilisez Ce Code