Radiobuttonlist modifica l'indice al caricamento di Firefox
-
06-07-2019 - |
Domanda
Ho una pagina asp con un DevExpress AspRadioButtonList. In Page_Load è selezionato SelectedIndex, basato su una variabile di proprietà. Su ClientSideEvents SelectedIndexChange alcune informazioni sono cambiate. Tutto funziona come previsto fino a questo punto.
In firefox, se viene attivato un ricaricamento, il pulsante di opzione selezionato ruota attraverso tutti i valori. Qualcuno ha avuto un problema simile?
<dxe:ASPxRadioButtonList ID="rbl" runat="server" ClientInstanceName="radiobuttonlist">
<ClientSideEvents SelectedIndexChanged="secChecks" />
<Items>
<dxe:ListEditItem Text="Cms" Value="0" />
<dxe:ListEditItem Text="News" Value="1" />
<dxe:ListEditItem Text="Url" Value="3" />
<%--<dxe:ListEditItem Text="Bussines" Value="2" />--%>
</Items>
</dxe:ASPxRadioButtonList>
Al caricamento della pagina (a è un parametro id)
myClass s = new myClass (a);
this.rbl.SelectedIndex = s.myProp;
if (s.myProp== 3)
{
this.lbUrl.Text = s.Urlpublic;
}
Javascript al caricamento:
$(document).ready(function(){
if (radiobuttonlist.GetSelectedIndex() == 0)
{
$("div.cms").show();
}
else if (radiobuttonlist.GetSelectedIndex() == 3)
{
$("div.bussines").show();
}
else if (radiobuttonlist.GetSelectedIndex() == 1)
{
$("div.news").show();
}
else if (radiobuttonlist.GetSelectedIndex() == 2)
{
$("div.url").show();
}
});
Grazie in anticipo!
Soluzione
Anch'io sono stato morso da questo. Ho trovato una soluzione su:
Fondamentalmente, il mio problema si è verificato perché stavo aggiungendo dinamicamente un oggetto flash prima dei miei pulsanti di opzione. La mia comprensione è che questo problema può verificarsi anche quando si aggiungono tag di input. Quando ho spostato i pulsanti di opzione (markup) prima del markup che sto inserendo dinamicamente, ha funzionato bene. Se non desideri spostare il markup, puoi provare ad aggiungere un completamento automatico = " off " attributo al tag del modulo circostante (es. '').
Entrambe queste soluzioni hanno funzionato per me. Per maggiori dettagli, controlla il link.