Disattivare ASP.NET ImageButton in non-IE Browser
-
11-09-2019 - |
Domanda
Ho un <asp:ImageButton />
, che ha la proprietà enabled
impostata false
.
Questo funziona in Internet Explorer, il pulsante non è 'cliccabile', ma in altri browser è possibile fare clic su esso. Tuttavia, non accade nulla quando si fa clic sul imagebutton
in questi altri browser.
Come posso disabilitare la possibilità di fare clic sul pulsante nei browser al di fuori di Internet Explorer?
Soluzione
Se ho capito bene, la ImageButton
è disabilitata, in modo da non causare un post indietro. Il problema è che il cursore 'mano' è ancora visualizzato in Firefox quando mettere il mouse sopra della ImageButton
. Se questo è il caso, è possibile modificare il cursore per l'ImageButton
in questo modo:
<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" : "";
}
Altri suggerimenti
Questo codice funziona con pulsante di immagine (anche come abilitare di nuovo)
if (cash == true && terms == true)
{
checkOutImageButton.Attributes.Add("disabled", "disabled");
error = true;
}
else
{
checkOutImageButton.Attributes.Remove("disabled");
error = false;
}
Aggiungere o rimuovere quanto segue nel file code-behind, nello stesso punto si imposta ImageButton1.Enabled = false
.
ImageButton1.Attributes["disabled"] = "disabled";