2017-12-08 13 views
0

WebページにASP GridViewがあります。gridviewテンプレートフィールドのテキストボックスIDをjavascript関数に渡す

2つのテンプレートフィールドと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 

} 

(未テスト)このようなハイパーリンクのクリック時にJavaScript関数にテキストボックスのIDを渡す方法について

答えて

0

何かが働くかもしれない助けてください。

次の行で、#記号を削除します。

<a href="#" id="lnkView" onclick="GetResults('<%= txtInput.ClientID %>')"> 

次に、あなたのjavascript:

function GetResults(id) { 

var ctrlId = "[id$=" + id + "]" 
var inputVal = $(ctrlId).val() 

// do work 

} 
関連する問題