Datalist没有显示内部模态弹出窗口?

时间:2014-07-03 05:48:51

标签: c# asp.net ajax

在datalist中我绑定父类别和该子类别中的子类别超过7行,将出现更多按钮

但是现在问题是数据列表没有显示内部模态弹出窗口,这个弹出窗口在按钮点击后出现

<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="btnNULL"
   PopupControlID="Panel1" CancelControlID="btnX">
</asp:ModalPopupExtender>
<asp:Panel ID="Panel1" runat="server"  align="center" Style="display: none">
   <asp:DataList ID="datalist" runat="server" RepeatDirection="vertical">
      <ItemTemplate>
         <%--ad_details.aspx?parent_id=<%#Eval("parent_id") %>&sub_name=<%#Eval("sub_cat_name") %>&sub_id=<%#Eval("sub_id") %>--%>
         <a href="search%20results/camaccess.aspx?p_id=<%#Eval("parent_id") %>&sub_id=<%#Eval("sub_id") %>&p_name=<%#Eval("sub_cat_name") %>">
         <asp:Label ID="Label2" runat="server" Text='<%# Bind("sub_cat_name") %>'></asp:Label>
      </ItemTemplate>
   </asp:DataList>
   <asp:LinkButton runat="server" ValidationGroup="none" ID="btnX" Text="close" CssClass="close"></asp:LinkButton>
</asp:Panel>

aspx.cs

protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
    if (e.CommandName == "cli")
    {

        ModalPopupExtender1.Show();
        Label id = (Label)e.Item.FindControl("idLabel");
        SqlDataAdapter mySqlCommand1 =
            new SqlDataAdapter("select * from sub_category where parent_id=" + id.Text +
                " ORDER BY sub_cat_name OFFSET 0 ROWS FETCH NEXT 7 ROWS ONLY", connection);
        DataSet ds12 = new DataSet();
        mySqlCommand1.Fill(ds12);
        datalist.DataSource = ds12;
        datalist.DataBind();
    }
}

1 个答案:

答案 0 :(得分:0)

删除Ajax并尝试此

<asp:Panel ID="Panel1" runat="server" visible="false">
<table style="position: fixed; z-index: 1; left: 0px; top: 0px"   border="0"  width="100%" height="100%">
    <tr>
        <td valign="top"  align="center"  >

<div  style=" width: 950px;   margin-top:80px;  background-color:#E2E2C7" id="layer2">  
<br>
<asp:Button ID="Button1" runat="server" OnClick="btn_click1" Text="Click to close this popup" />
<br>

   <asp:DataList ID="datalist" runat="server" RepeatDirection="vertical">
      <ItemTemplate>
         <%--ad_details.aspx?parent_id=<%#Eval("parent_id") %>&sub_name=<%#Eval("sub_cat_name") %>&sub_id=<%#Eval("sub_id") %>--%>
         <a href="search%20results/camaccess.aspx?p_id=<%#Eval("parent_id") %>&sub_id=<%#Eval("sub_id") %>&p_name=<%#Eval("sub_cat_name") %>">
         <asp:Label ID="Label2" runat="server" Text='<%# Bind("sub_cat_name") %>'></asp:Label>
      </ItemTemplate>
   </asp:DataList>

</div>
</td>
</tr>
</table>

背后的代码

// when you want to show datalist then 
Panel1.Visible = true;
// when you want close / hide it then
Panel1.Visible = false;