我想将存储的值放在“val”中,并将其分配给gridview中的文本框。我能够循环并找到行而不是控件。我收到一个未定义的错误消息。我错过了我无法找到控件。附件是示例代码:
<!--Javascript Code-->
<script type="text/javascript">
function SetPIN(val)
{
if (Searching == 'eID')
{
var num = val;
var grdvw = document.getElementById('gvEvents');
for (var rowId = 1; rowId < grdvw.rows.length -1; rowId++){
var txtbx = grdvw.getElementById('txtEvtTo').value;
txtbx = num;
}end for
}
}
</script>
<asp:GridView ID:gvEvents runat="server" AutoGenerateColumns="False" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:TextBox ID="txtEvtTo" runat="server" Width="250px"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我尝试了不同的在线选项,但我无法获得文本框的价值
任何建议都会非常感激。
DR
答案 0 :(得分:2)
不要在IDE中查看html标记,而是在浏览器的“查看页面源”中显示呈现的html。 asp控件id在渲染时会被破坏,所以除非你将控件的ClientIDMode设置为Static,否则你对getElementById的调用将无法用于查找gridview或单元格控件。
以下是我的一个网格视图中的几个示例数据行:
<tr class="gvRowStyleContactList " valign="middle">
<td>
<span id="ctl00_ctl00_cphMain_IEHContent_gvEscalationContactListView_ctl02_lblEmailAddress">x@v.com</span>
</td>
</tr>
<tr class="gvRowStyleContactList " valign="middle">
<td>
<span id="ctl00_ctl00_cphMain_IEHContent_gvEscalationContactListView_ctl03_lblEmailAddress">xx@vv.com</span>
</td>
</tr>