[英]how to create dynamicly generated button that call server side method in using javascript in ASP.Net c#
我的问题
1)我创建了aspx页面,并把文字。
2)在.cs文件中->从db提取数据并将其绑定在文字上
例如文字就是那个控制
literal+="<tr><td>data goes here</td><td>here i want put my button</td></tr>"
然后如何从html控件引发click事件。
**.aspx page**
<div class="table-primary">
<table>
<thead>
<tr>
<th>#</th>
<td>Sales Person</td>
<td>Employee Code</td>
<td>Status</td>
<td>Action</td>
</tr>
</thead>
<tbody>
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
</tbody>
</table>
.cs页面
protected void BindData()
{
int i = 0;
DataTable dt = VijayDB.ExecuteSqlQueryForDataTable(CommandType.StoredProcedure, "SFA_GetAllSalesPerson", null);
foreach (DataRow dr in dt.Rows)
{
Literal1.Text += "<tr>";
Literal1.Text += "<td>"+(i++)+"</td>";
Literal1.Text += "<td>" + dr["person_name"] + "</td>";
Literal1.Text += "<td>" + dr["fk_hrme_employee_id"] + "</td>";
Literal1.Text += "<td>" + dr["person_status"] + "</td>";
Literal1.Text += "<td><a href='javascript:Edit(" + dr["pk_sfa_stm_salesperson_id"] + ");'>Edit</td>";
Literal1.Text += "</tr>";
}
}
您可以提前创建事件而不将其绑定到控件(因为它尚不存在)。 然后,在代码中,在动态生成控件之后,可以使用AddHandler方法将事件添加到按钮click事件中
Button btn = new Button();
btn.Text = "New Button";
btn.ID = "Button1";
btn.Click += new System.EventHandler(this.NewButton_Click);
我试过了
Literal1.Text += "<td><a href='#' onServerClick='Save' runat='server'>Edit</a></td>";
它呈现
<td><a href='#' onServerClick='Save' runat='server'>Edit</a></td>
但是当我在aspx页面中写<a href='#' onServerClick='Save' runat='server'>Edit</a>
,它会崩溃
<a href="javascript:__doPostBack('ctl00$Body$ctl01','')">Edit</a>
而且工作正常。
所以如何呈现文字文本以在html上方生成
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.