1

为了使用 txtbox = document.getElementById()外部 javascript 文件中的函数,我将每个控件的 clientID 分配给我使用的变量。

例如,我说:

var lbCancelID = '<%= lbCancel.ClientId %>';

然后,当我在使用 document.getElementById() 的外部 javascript 文件中调用函数时,它可以对返回元素 (txtbox) 执行任何操作。

这工作得很好,直到我到达需要在 gridviews 编辑模板中获得控件的区域。然后,它告诉我该元素不存在。

所以我尝试了这个: var txtStartDateID = '<%#((GridViewRow)Container).FindControl("txtStartDate").ClientID %>'

但是得到一个错误'GridViewRow' is a type and cannot be used as an expression.我能做些什么呢?

谢谢!

4

1 回答 1

0

我认为您在标记中使用的方法不起作用。在您后面的代码中,您可以获得文本框的客户端 ID

TextBox t = (TextBox) gridView.Rows[0].FindControl("TextBoxID"); // Give the index of the row. and gridview in your gridview ID

您可以从选定的索引事件中获取索引。如果您在 rowdatabound 事件中使用上述代码,那么您可以通过 e.Row 等获取行索引。

于 2012-07-26T00:19:43.103 回答