Désactiver ASP.NET ImageButton dans les navigateurs non-IE
-
11-09-2019 - |
Question
J'ai un <asp:ImageButton />
qui a sa propriété enabled
mis à false
.
Cela fonctionne dans Internet Explorer, le bouton est « cliquable », mais dans d'autres navigateurs, vous pouvez cliquer dessus. Cependant, rien ne se passe lorsque vous cliquez sur le imagebutton
dans ces autres navigateurs.
Comment puis-je désactiver la possibilité de cliquer sur le bouton dans les navigateurs en dehors d'Internet Explorer?
La solution
Si je comprends bien, le ImageButton
est désactivé, il ne provoque pas un poste arrière. Le problème est que le curseur « main » est toujours affiché dans Firefox lors de la mise sur la souris de l'ImageButton
. Si tel est le cas, vous pouvez changer le curseur pour la ImageButton
comme ceci:
<style type="text/css">
.pointer
{
cursor:default;
}
</style>
<asp:ImageButton ID="ImageButton1" runat="server"
ImageUrl="~/Images/image.bmp" Enabled="false" />
protected void Page_Load(object sender, EventArgs e)
{
ImageButton1.CssClass = !ImageButton1.Enabled ? "pointer" : "";
}
Autres conseils
Ce code fonctionne avec le bouton d'image (comment activer à nouveau)
if (cash == true && terms == true)
{
checkOutImageButton.Attributes.Add("disabled", "disabled");
error = true;
}
else
{
checkOutImageButton.Attributes.Remove("disabled");
error = false;
}
Ajouter ou supprimer les éléments suivants dans votre fichier code-behind, au même endroit que vous définissez ImageButton1.Enabled = false
.
ImageButton1.Attributes["disabled"] = "disabled";