【发布时间】:2013-12-09 16:27:46
【问题描述】:
我正在以编程方式填充 GridView 并向最后一行添加一个按钮:
ButtonField bc = new ButtonField();
bc.ButtonType = ButtonType.Button;
bc.Text = "Edit";
bc.CommandName = "EditAsset";
grid.Columns.Add(bc);
在标记中我指定了一个处理程序:
<asp:GridView ID="gvListView" OnRowCommand="gvListView_RowHandler" runat="server"></asp:GridView>
我将处理程序添加到代码隐藏中:
protected void gvListView_RowHandler(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "EditAsset")
{
}
}
当我运行它并单击网格视图中的按钮时,我收到一个 __doPostBack 未定义的 JavaScript 错误。有谁知道为什么不生成那个js?
动态生成的按钮调用如下所示:
onclick="javascript:__doPostBack('lvStuff$gvListView','EditAsset$0')"
编辑:doPostBack 是在页面上生成的,但它周围有一些评论?
//<![CDATA[
var theForm = document.forms['form1'];
if (!theForm) {
theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
【问题讨论】:
标签: c# asp.net .net gridview buttonfield