关于 asp.net:如何将任何 aspx 网页的任意部分作为 Ajax 弹出窗口提供

关于 asp.net:如何将任何 aspx 网页的任意部分作为 Ajax 弹出窗口提供

How to make any arbitrary SECTION of ANY aspx webpage available as an Ajax popup

我想知道是否有人可以想到一种好的技术来使 aspx 页面的任意部分(例如,指定 DIV 标记中的内容)能够被调用并显示在 ajax 模式弹出窗口中? (因此,只会显示页面的某个部分)

例如:
1)您有一个包含许多实体(客户、产品、商店等)的大型应用程序
2)每个实体都有一个EntityDetails aspx page

现在,从一个显示许多不同类型实体的发票屏幕说,我希望能够将鼠标悬停(或单击一个小图标)一个实体,并弹出一个小工具提示样式的模态 ajax 窗口,什么是显示的将是相应的 EntityDetails aspx 页面的一部分,该页面被指定为可用于呈现为弹出窗口。
显然,标识特定实体的相应 aspx 参数也必须从页面传递。

所以要这样做,**我认为请求的页面必须在服务器的内存中呈现**,然后必须将innerhtml从指定的div中拉出,并返回到调用页面,然后它将在弹出的 ajax 窗口中显示此 html。
因此,除非有一种我缺少的更简单的方法来执行此操作,否则如何在服务器上完成此渲染?

以前有没有人看到过这种情况,是否有任何预先存在的框架或任何东西可以做到这一点?

更复杂的是,是否可以使用已经嵌入现有页面的现有 asp.net 表单机制让弹出表单可编辑并保存回服务器(如果调用表单已经有一个 asp.net 表单)。网络表格....我认为每页只允许使用一种表格,对吗?)

当然,通过简单的 javascript 弹出窗口或新窗口打开 EntityDetails 表单并不是我想要的。而且我不想在我希望它显示的每个页面上嵌入详细信息表单......应用程序中的每个表单都可以将任何其他表单调用为弹出窗口。

谢谢!


如果您使用用户控件进行编辑,我认为您可以使用 Greybox。将用户控件名称(和其他参数)传递给您以灰色框显示的页面,然后动态加载执行编辑的用户控件。


您很可能会使用一组用户控件和 AJAX 控件工具包中提供的 ModalPopupExtender 来执行此操作。


http://api.jquery.com/load/
http://css.dzone.com/articles/jquery-load-data-from-other-pa


我不能投票,但用户控制将是一种方式。


推荐阅读