0

我使用 div 标签作为数据容器,当用户单击链接时,页面上会显示链接列表页。我正在使用 asp.net C# 目前我正在使用 diff-2 div 标签中的链接点击显示数据,并且全部使用

    divid.InnerHtml="";

在后面的代码中,但现在我想使用将在单击链接时出现的单个 div,并且我想从数据库加载内容以加载到与单击的链接相对应的 div 中。

        <div id="popUpDiv"  runat="server"
        style="
            display:none;
            position:fixed;
            top:20%;
            left:20%;
            right:20%;
            min-width:60%;
            min-height:60%;
            background-color:Gray;
    z-index: 10002;">
         My popup box
         </div>

这是目前显示 div 的按钮

<asp:Button ID="btnPopUp" OnClientClick="togglePopUp('popUpDiv'); return false;"
             text="Pop Up a div box" runat="server" />

这是 C# 代码

while (dr.Read())
            {
                sr = sr + "<table border=\"0px\" ><tr valign=\"top\"><td align=\"left\" valign=\"top\"><a href=\"About.aspx\">" + dr.GetString(2) + "</a></td></tr><tr><td align=\"left\">"+"<img alt=\"\" src=\"Container/Images/aus.jpg\" />"+"</td></tr><tr valign=\"top\" ><td style=\"text-align:Justify;\" valign=\"top\">" + dr.GetString(3) + "</td></tr></table>";
            }
            con.Close();
            dr.Close();
            popUpDiv.InnerHtml = sr;

这是我显示 div 的 javascript

    <script type="text/javascript" language="javascript">
    function togglePopUp(div_id) {
        var el = document.getElementById(div_id);
        if (el.style.display == 'block') { el.style.display = 'none'; }
        else { el.style.display = 'block'; }
    }
    </script>
4

1 回答 1

0

此解决方案使用 ajax 和结束请求处理程序来显示 div,将其添加到您的 aspx 页面。

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<script type="text/javascript" language="javascript"> 
 Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandle);
 function endRequestHandle(sender, Args) {
        if (pbControl.name.toString() == "btnPopUp") {
        var el = document.getElementById(div_id);
        if (el.style.display == 'block') { el.style.display = 'none'; }
        else { el.style.display = 'block'; }                  
        }
</script>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
 <ContentTemplate>
  <asp:Button ID="btnPopUp" text="Pop Up a div box" runat="server" />
 </ContentTemplate>
</asp:UpdatePanel>

代码隐藏:

while (dr.Read())
 {
   sr = sr + "<table border=\"0px\" ><tr valign=\"top\"><td align=\"left\" valign=\"top\"><a href=\"About.aspx\">" + dr.GetString(2) + "</a></td></tr><tr><td align=\"left\">"+"<img alt=\"\" src=\"Container/Images/aus.jpg\" />"+"</td></tr><tr valign=\"top\" ><td style=\"text-align:Justify;\" valign=\"top\">" + dr.GetString(3) + "</td></tr></table>";
 }
con.Close();
dr.Close();
popUpDiv.InnerHtml = sr;
于 2012-06-29T16:59:14.053 回答