0

我有一个由文本框填充的 ASP.Net WebForm(EntryForm.aspx),供用户填写,并将传递给数据库。我的客户希望用户单击一个按钮和一个弹出窗口以打开此弹出窗口中来自 entryform 文本框 (addressTextBox.txt) 的所有信息作为格式化页面供用户阅读和确认。如果正确,用户将单击将关闭弹出窗口的确认按钮,返回原始表单并填充确认字段,然后允许用户继续执行表单的下一步。如果单击取消按钮,它只会关闭弹出窗口,用户可以编辑他们的原始条目。

好的,所以我决定尝试使用 ASP 面板和 javascript 来显示/隐藏面板。这似乎最简单。我找到了一个不错的脚本,它似乎可以做我想做的事,但有问题。

我使用的是 Site.Master,所以我假设我将脚本函数放在页面的内容区域内。像这样

   <asp:Content ContentPlaceHolderID ="MainContent" runat="server">
   <script type =" text/javascript">
       function ShowPanel()
       {
       var panel = document.getElementById("<%=ConfirmPanel.ClientID%>");
       panel.style.display = 'block';
       return false;
       }
       </script>

然后我打电话给它

<asp:Button ID="SubmitInfoButton" runat="server" Text="Submit Entry"
OnClientClick="return ShowPanel();"/>

但面板从不显示在屏幕上。有什么建议么?

再次感谢

4

2 回答 2

1

由于它在同一页面上,因此您最好使用 javascript 来处理它。

在您的表单上放置一个按钮,该按钮将显示一个隐藏的 div(绝对使用 z-index 定位)。

然后,使用 javascript 将值复制到 div 内的标签中。在隐藏的 div 内,您可以放置​​一个按钮,该按钮将再次隐藏 div(您的确认按钮)并填充该字段(或启用“继续”按钮)。

于 2013-03-27T20:58:14.810 回答
0

当我之前在我的应用程序中这样做时,我使用了 Ajax 工具包中的 ModalPopupExtender 控件,我强烈建议您也这样做。模态弹出窗口实际上只是一个面板,其中应用了一些 css 以使其显示为模态。一个优点是您只需使用 .net C# 或 VB 代码即可完成所有操作,而不必使用 javascript。另一个优点是它看起来更专业,有一个模式弹出而不是浏览器弹出。但是,如果您要坚持使用 javascript,我会尝试删除 return from 这个词OnClientClick="return ShowPanel();",如果这不起作用,只需在后面的代码中注册 javascript,然后在后面的代码中从按钮的单击事件中调用它。

于 2013-03-28T05:51:45.890 回答