У меня есть GridView, и в одном из этих столбцов есть текстовое поле. Когда это текстовое поле выбрано, он отображает список фрагментов. Когда выбран кусок, мне нужно показать кусок в текстовом поле.Как вызвать текстовое поле, которое находится в GridView
<asp:UpdatePanel ID="udpPieceDetails" UpdateMode="Conditional" runat="server">
<ContentTemplate>
<asp:GridView style="width:75%;float:left"
ID="gvPieceOutturns"
ShowHeaderWhenEmpty="false"
CssClass="tblResults"
runat="server"
OnRowDataBound="gvPieceOutturns_ItemDataBound"
DataKeyField="ID"
AutoGenerateColumns="false"
allowpaging="false"
AlternatingRowStyle-BackColor="#EEEEEE">
<HeaderStyle CssClass="tblResultsHeader" />
<Columns>
<asp:TemplateField HeaderText="Outturn Pce" SortExpression="OutturnPce">
<ItemTemplate>
<a style="float:none;width:16px;height:16px;margin-right:0px;left:0px;top:26px" title="Pick Type from list..." class="iconSearch" id="btnMemShowPieceType"></a>
<input type="text" id="txtMemPieceType" class="lookuppopup" onblur="CheckMemPiece(this.value)" style="text-transform:uppercase;width:40px" runat="server"/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
Здесь я пытаюсь заполнить текстовое поле:
function PopulateMemPiece(result) {
if (result.ID > 0) {
$("#<%= hfPieceType.ClientID %>").val(result.ID);
$("#<%= txtMemPieceType.ClientID %>").val(result.Code);
} else {
$("#<%= hfPieceType.ClientID %>").val(0);
$("#<%= txtMemPieceType.ClientID %>").val("");
}
}
Но я получаю эту ошибку:
Error 2586 The name 'txtMemPieceType' does not exist in the current context
Если я использую the' FindControl' как я заполнить текстовое поле, когда часть выбрано? – user123456789
Установите его и обновите UpdatePanel, введите tb как AsyncPostBackTrigger. Также вам может потребоваться установить AutoPostBack в TextBox. –