我的网页上有一个ASP GridView。
我有两个模板字段1个文本框和1个超链接。
如果我单击该特定行上的超链接,我需要在gridview的特定行中传递相应的文本框ID。
<asp:TemplateField HeaderText="Input">
<ItemTemplate>
<asp:TextBox ID="txtInput" Text='<%# Eval("Input") %>' Width="200px" Height="70px" runat="server" TextMode="MultiLine"></asp:TextBox>
</ItemTemplate>
<ItemStyle Width="20px" Height="30px" BorderStyle="Solid" Font-Size="12px" HorizontalAlign="Left"
VerticalAlign="Middle" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Verify">
<ItemTemplate>
<a href="#" id="lnkView" onclick="GetResults('#<%= txtInput.ClientID %>')">
<%#Eval("Verify")%>
</a>
</ItemTemplate>
<ItemStyle Width="203px" Height="15px" BorderStyle="Solid" BorderWidth="1px" Font-Size="12px" HorizontalAlign="Left"
VerticalAlign="Middle" />
</asp:TemplateField>
我尝试了以下代码但由于名称'txtInput'在当前上下文中不存在而收到错误。
Javascript功能
function GetResults(id) {
//My code using this textbox id
}
请点击超链接
,帮助您了解如何将文本框ID传递给javascript函数答案 0 :(得分:0)
这样的事情可能有用(未经测试)。
以下行,删除#符号。
<a href="#" id="lnkView" onclick="GetResults('<%= txtInput.ClientID %>')">
然后你的javascript:
function GetResults(id) {
var ctrlId = "[id$=" + id + "]"
var inputVal = $(ctrlId).val()
// do work
}