【问题标题】:Adding html button to a list through innerhtml property通过 innerhtml 属性将 html 按钮添加到列表中
【发布时间】:2017-04-18 20:28:55
【问题描述】:

我有一个 html 列表,我正在尝试使用文件后面的代码将 html 按钮添加到属性“innerhtml”。我可以添加按钮,但是 onclick 事件没有被触发

HTML:

<ul runat="server" id="list">
    <li></li>
    <li><a  id="loginID" runat="server" href="../Accounts/login.aspx">Login</a></li>
    <li id="logout" runat="server"> <a href="~/Register.aspx" runat="server"> Register</a></li>    
</ul>

后面的代码:

logout.InnerHtml = "<input type=\"submit\" id=\"b1\" runat=\"server\" onserverclick=\"b1_click\" />"; //logout is the id of the list item             
         }
    }

    public void b1_click(Object sender,EventArgs e)
    {
        Response.Redirect("~/Accounts/login.aspx");
    }
}

【问题讨论】:

标签: c#


【解决方案1】:

这不是动态创建服务器端控件的正确方法。 请查看下面的示例,以更好地了解如何执行此操作。请记住,您不能分配 ClientID 属性,因为它是只读的并在运行时初始化。

protected void Page_Load(object sender, EventArgs e)
{
    Button btn = new Button();
    btn.Text = "Dynamic Button";
    btn.ID = "b1"; // Server Side ID
    btn.Click += b1_click;

    logout.Controls.Add(btn);
}

public void b1_click(Object sender,EventArgs e)
{
    Response.Redirect("~/Accounts/login.aspx");
}

【讨论】:

    猜你喜欢
    • 2016-05-04
    • 2022-11-05
    • 2021-05-09
    • 2013-05-30
    • 2017-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多