4

我正在寻找在另一个 ASP.NET 页面的 ASP.NET 中实现模式弹出窗口的最佳方法。我正在为 Firefox 2.x+ 编写代码并且可以使用 JQuery,但我对它不是很熟悉。

我看到很多使用“AJAX”的解决方案,但我不确定在什么情况下,所以我没有走那条路。

4

6 回答 6

4

我正在使用jQuery UI对话框插件。效果很好。该插件的文档可以在http://docs.jquery.com/UI找到。

于 2009-03-06T19:27:45.593 回答
4

I have used both the ajax modal extender as well as the jQuery jqModal, both have worked pretty well. At the end of the day, this decision should come down to what the rest of the code is like, what your comfort is with each, etc.

If I were to pick an option today, I would probably pick the jqModal or simple modal for jQuery. I'm pretty comfortable with these now.

于 2009-03-06T19:39:37.843 回答
2

对于简单的模态显示,我发现 BlockUI 是一个很好的解决方案。

例如,这里有一篇关于使用 BlockUI 作为模态进度指示器的文章,还有一篇关于使用 BlockUI 显示模态确认对话框的文章

如果您需要更复杂的东西,我会选择 jQueryUI 对话框。

于 2009-03-06T22:44:56.180 回答
0

我自己制作,使用 DOM 方法。我发现它比将这些插件中的任何一个适应我们的 CSS 要简单得多。

模态框只是一个带有背景的绝对定位窗口。我们使用带有浮动内容的更大透明容器来制作我们的容器。

我使用一个函数返回一些带有浮动内容的 html。用于模态框的类应该绝对定位在高 z 层。

function create_modal(doc_id,css_class,append_to)
{
if(typeof append_to==='undefined'){append_to='content';}
var container=document.getElementById(append_to);
if(!container){return false;}
var modal_box=document.createElement('div');
container.appendChild(modal_box);
modal_box.id=doc_id;
modal_box.className=css_class;
return modal_box;
}

var modal_window=create_modal('modal_id','a_css_class');
if(!modal_window){return false;}
modal_window.innerHTML=function_or_var_providing_html();

所以,没有一些 10 或 15 k 插件,一切都很好,很简单!

于 2009-03-06T22:58:31.187 回答
0

我用过AjaxControlToolkit但@tvanfosson 建议的 jQuery 选项似乎好多了

于 2009-03-06T19:33:26.657 回答
0

You could use radWindow from Telerik, the jQuery UI Dialog plugin like tvanfosson recommended or you could take a look at

http://vision-media.ca/resources/jquery/jquery-popup-plugin-review which review some jQuery plugins for popups.

Having only expericence with radWindow, I can tell you that with radWindow, you might have to use some hacks and quirks to make it work properly, but the result is good if you put enough time into it.

于 2009-03-06T19:35:14.513 回答