c#-adding ASP:后面代码中的按钮

时间:2017-03-13 05:03:07

标签: c# asp.net

嗨,碰巧我需要这种方法(或任何建议,如果你有) 此代码生成表

while (rd.Read())
{
    resultsHtml.Append("<tr class='odd gradeX'>");
    resultsHtml.Append("<td>" + rd["region_location"].ToString() + "</td>");
    resultsHtml.Append("<td>" + rd["region_tag"].ToString() + "</td>");
    resultsHtml.Append("<td class='center'>");
    resultsHtml.Append("<div class='tooltip-demo'>");
    resultsHtml.Append("<a class='btn btn-info' href='regionEdit.aspx?id=" + rd["region_id"].ToString() + "'><i class='fa fa-paw'></i></a> ");
    resultsHtml.Append("<asp:Button ID='btnDelete' runat='server' Text='Login' CssClass='btn btn-outline btn-primary' Style='width: 100px;' OnClick='btnDelete_Click' />");
    resultsHtml.Append("</div>");
    resultsHtml.Append("</td>");
    resultsHtml.Append("</tr>");
}

如果你发现那里有一个asp:button。因为我希望如果用户点击该按钮,它就会删除它。所以我放了一个

  public void btnSubmitDelete_Click(object sender, EventArgs e)
{
}

但事情是。它没有显示,我无法弄清楚如何将region_id放在asp:button中以确定删除哪个以及while的每个循环。请帮忙

2 个答案:

答案 0 :(得分:1)

我认为当你想要添加一个asp控件并向最终用户显示控件时你应该​​像这段代码一样向占位符或面板添加动态控件:

        <asp:PlaceHolder runat="server" ID="_plchControles"></asp:PlaceHolder>

并在代码背后:

        var btn = new System.Web.UI.WebControls.Button();
        btn.Text = "sample";
        btn.ID = "btnSubmitDelete";
        btn.OnClientClick += btnSubmitDelete_Click;
        _plchContent.Controls.Add(btn);

答案 1 :(得分:1)

您的脚本将作为HTML控件使用,您可以从Javascript绑定click事件。为此,在c#中定义WebMethod并从Javascript click事件中调用它。 e.g。

$("#btnDelete").on("click",function(e)
{
     var para=[]
     para.param1=val1;
     para.param2=val2;
     $.post("/path/delete",para,function(result)
    {

    });
});

C#

[WebMethod]
public void delete(string param1,string param2)
{
   //Delete code here
}

否则 mohammadreza izadi 答案如果你想要asp.net控制,你必须使按钮的对象定义为非字符串。