2010-06-25 1 views
0

При запуске модального равинда в IE 6 все выпадающие списки, видимые на родительской странице, скрыты. Когда они спрятаны, они уходят даже после того, как модальная была закрыта. Это чистые ASP.NET dropdownlists. В раскрывающемся списке нет ничего особенного - я могу добавить новые выпадающие списки на страницу, в которых ничего нет, и они все равно исчезают при запуске. Есть идеи?Запуск Radwindow в IE 6 заставляет все выпадающие списки скрыть

Я использую ASP.NET 3.5, 2009 Q3 элементов управления ASP.NET AJAX Telerik, в тестирование с IE 6 (6.0.2600) на виртуальной машине под управлением Windows 2000.

Хотя вопрос был первоначально встречается на гораздо более сложная страница, я создал новую страницу, не CSS, только голые кости элементы, и это все еще происходит в IE 6.

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="WebForm1.aspx.vb" Inherits=".WebForm1" %> 

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <telerik:RadScriptManager ID="manager1" runat="server"> 
     </telerik:RadScriptManager> 

     <asp:DropDownList ID="ddl1" runat="server"> 
      <asp:ListItem Value="1">Item 1</asp:ListItem> 
      <asp:ListItem Value="2">Item 2</asp:ListItem> 
      <asp:ListItem Value="3">Item 2</asp:ListItem> 
     </asp:DropDownList> 
     <asp:Button ID="btn1" runat="server" OnClientClick="ShowModal(); return false;" Text="click" /> 
    </div> 
      <telerik:RadWindowManager ID="RadWindowManager1" runat="server" /> 
    <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server"> 

     <script type="text/javascript"> 
      function ShowModal() { 
       var wnd = radopen('<%=ResolveUrl("~/register.aspx") %>', null); 
       wnd.set_modal(true); 
       wnd.center(); 
       wnd.set_behaviors(Telerik.Web.UI.WindowBehaviors.Close + Telerik.Web.UI.WindowBehaviors.Move + Telerik.Web.UI.WindowBehaviors.Resize); 
       wnd.show(); 
       return false; 
      } 
     </script> 

    </telerik:RadScriptBlock> 
    </form> 
</body> 
</html> 

оказывается, что при показе radwindow с модальным быть установлен true, атрибут видимости раскрывающегося списка устанавливается в скрытое. С модальный быть установлен в ложным, выпадающий прекрасно ... Благодаря

Dan Эпплярд

ответ

0

Какую версию ASP.NET вы используете, и какая версия Teleriks Rad Window? У меня было много проблем со старыми версиями, но их новые версии, похоже, отлично работают.

Я проверил его на отдельной странице.

  1. Создать новую страницу с несколько DDL-х случайно заполнено
  2. Добавить основное управление окном радиана к нему - и подключить его, чтобы он мог быть вызван

Смотрите, если вы можете воссоздать вопрос , Если вы не можете, то это скорее всего что-то с CSS, JavaScript или разметкой HTML.

Редактировать: Также помните, что у IE6 есть проблемы с выпуском. Обычно основная проблема заключается в том, что раскрывающийся список всегда находится над каждым другим элементом управления, но я бы не задерживал дыхание, если это связано с браузером.

+0

Я добавил пример действительно простой страницы, где это все еще происходит ... –

1

Мы говорили в Telerik's forum, и я просто хотел бы добавить информацию здесь, как это могло бы помочь другим пользователям:

Проблема здесь с логикой. С вашего кода вы делаете следующее:

  1. открыть контроль RadWindow
  2. установить его модальное свойство верно. В этом случае мы скрываем выпадающие списки в IE6.
  3. установить поведение элемента управления
  4. В центре окна (я предполагаю, что вы сделаете это, чтобы перерисовать окно после настройки его поведения).
  5. Вы снова вызываете метод show(). Поскольку вы вызываете show() для модального мода, код, который скрывает выпадающие списки, запускается снова - это причина, по которой они не видны после закрытия окна.

Чтобы избежать этой проблемы, я предлагаю не вызывать show() еще раз, но для вызова метода center() last.

RadWindow явно скрывает выпадающие списки в IE6, потому что до IE7 выпадающие списки и элементы списка были тяжелыми объектами, которые были отображены над всеми элементами DHTML на странице, включая модальный фон RadWindow. Это позволило пользователям по-прежнему использовать выпадающие списки на родительской странице, даже если был показан модальный RadWindow. Чтобы избежать этого, мы отключим выпадающие списки, если браузер IE7 + и полностью скрыть их, если это IE6.

Смежные вопросы