【问题标题】:Alternatives to modal popup extender in asp.net?asp.net 中模态弹出扩展器的替代方案?
【发布时间】:2010-12-10 11:12:34
【问题描述】:

我有一个模态弹出扩展器,其中有一个用户控件,我在一个 ASP.NET 4.0 项目。 我对它生成的 js 代码和标记中的混乱不太满意:/ 那么,任何可以从代码隐藏中轻松控制的有价值的替代方案:)?

【问题讨论】:

    标签: asp.net ajax modalpopupextender


    【解决方案1】:

    在 Ajax Control Toolkit 的道路上,我建议继续使用 jQuery 或其他一些 javascript 框架。虽然我理解“从代码隐藏控制它”的愿望,因为起初它似乎更容易,但尝试将客户端功能包装在服务器端控件中通常比它的价值更麻烦。

    即使在最简单的情况下,在 jQuery(例如)中创建模式弹出窗口所需的 javascript 代码量也少于使用 Ajax Control Toolkit MPE。例如,我喜欢 jQuery 插件 SimpleModal。使用带有默认选项的 SimpleModal 将 div 转换为模式弹出窗口的代码如下:

       <script type="text/javascript">
        function showPopup() {
            $('#<%=popupDivID.ClientID %>').modal({ appendTo: '#aspnetForm' });
        }
        </script>
    

    然后,您可以将该函数添加到单击事件中,例如。而且它的灵活性要高出大约一千倍。

    如果您只是不喜欢在标记文件中嵌入 javascript,您仍然可以通过使用 ScriptManager 注册脚本并向控件添加事件,从代码隐藏技术上控制这一切。

    【讨论】:

      【解决方案2】:

      您是否查看过 CodePlex 上的 Ajax 控制工具包。 Ajax Control Toolkit 它有几个非常有用的控件,很容易实现。该工具包包括一个模式弹出控件以及一个弹出控件。在我给你的链接中,所有关于如何下载和使用工具包的说明。

      如果您可以访问它,另一个选项是 Telerik 控件。他们的 Ajax 控件包括他们所谓的 radWindow,它也能很好地工作。你可以阅读它here。 Telerik 的缺点是它非常昂贵。

      我都用过,效果很好。

      【讨论】:

        【解决方案3】:

        使用jQuery Dialog UI,因为这可能会为您提供最佳支持选项。它支持模态行为。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-10-22
          • 1970-01-01
          • 2016-11-29
          • 1970-01-01
          • 2011-01-02
          • 2011-05-25
          • 1970-01-01
          • 2011-12-15
          相关资源
          最近更新 更多