Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Проблемы с RadioButton в Firefox 21


Автор: Telsystems 29.10.2013, 11:16
Добрый день.

Столкнулся с такой проблемой в браузере Firefox 21.

Есть страница с несколькими radiobutton, которые возвращают тип операции в зависимости от выбранного radiobutton.

Код

public string OperationTypeCode
    {
        get
        {   
            foreach (RepeaterItem item in rptOperations.Items)
            {
                GroupRadioButton rbOperation = (GroupRadioButton)item.FindControl("rbOperation");
                if (rbOperation.Checked)
                    return rbOperation.Text;    // Text contains OperationTypeCode

            }
        }
        set
        {
            foreach (RepeaterItem item in rptOperations.Items)
            {
                GroupRadioButton rbOperation = (GroupRadioButton)item.FindControl("rbOperation");
                if (rbOperation.Text == value)    // Text contains OperationTypeCode
                {
                    rbOperation.Checked = true;                    
                    return;
                }
            }
        }
    }



При смене значения radiobutton в OnLoad() сохраняю значение нужному контролу

Код

string controlId = System.Web.HttpContext.Current.Request["__EVENTTARGET"];

if (controlId.Contains("rbOperation"))
{
    foreach (RepeaterItem item in rptOperations.Items)
    {
        GroupRadioButton rbOperation = (GroupRadioButton)item.FindControl("rbOperation");
        if (rbOperation != null && rbOperation.UniqueID == controlId)
        {
            rbOperation.Checked = true;
            break;
        }
     }
}



При нажатии на кнопку "Делее" у мене вызывается get_OperationTypeCode где берется имя выбранного radiobutton.

Проблема в том, что в Firefox 21 при нажатии на кнопку "Далее" почему-то все radiobutton.Checked стают false.

Вопрос: как решить эту проблему? Может кто-то сталкивался с подобным или знает решение?

Пока что заганяю значения контрола в кеш и, если все radiobutton.Checked = false, то брать значение с кеша. Но это решение не очень хорошое.

Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)