Tengo una vista de cuadrícula simple que contiene ID de usuario y nombre de usuario y un botón de selección en cada fila,
Creé una función de javascript para mostrar la ID de usuario y el nombre de usuario de gridview a asp.net ID de usuario de Texboxe y nombre de usuario de Texboxe haciendo clic en el botón de selección, y funciona bien,
pero en lugar de usar varios botones en cada fila, quiero usar un solo botón que pueda hacer lo mismo según el valor del ID de usuario de Texboxe,
por ejemplo, si escribí ID de usuario (1) en ID de usuario de Texboxe y luego hice clic en el botón único que muestra el nombre de usuario en Nombre de usuario de Texboxe
<asp:GridView runat="server" ID="GridView11" AutoGenerateColumns="false" Width="290px" DataSourceID="SqlDataSource11" CssClass="GridviewDiv"> <HeaderStyle CssClass="headerstyle" Height="40px" /> <Columns> <asp:BoundField DataField="user_name" HeaderText="user ID"/> <asp:TemplateField HeaderText="user name" > <ItemTemplate> <asp:Label ID="Label27" Text='<%# Eval("user_name") %>' runat ="server" /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <ItemTemplate> <asp:Button ID="ButtonSelect" runat="server" ClientIDMode="Static" width="60" Text='Select' OnClientClick = "return GetSelectedRow(this)" /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> <asp:SqlDataSource ID="SqlDataSource11" runat="server" ConnectionString="<%$ ConnectionStrings:MydbConnectionString2 %>" SelectCommand="SELECT [user_ID], [user_name] FROM users_table"></asp:SqlDataSource> function GetSelectedRow(UserLink) { var row = UserLink.parentNode.parentNode; var Userid = row.cells[0].innerHTML; var UseriName= row.cells[1].getElementsByTagName("span")[0].innerHTML; //document.getElementById("TextBox_user_id").value = Userid; document.getElementById("TextBox_user_name").value = UseriName; return false; }Puedes usar así...
function GetSelectedRow(UserLink) { var row = UserLink.parentNode.parentNode; var i = row.rowIndex; var grid1=document.getElementById("GridView11"); var Userid = grid1.row[i].cells[0].innerHTML; var UseriName= grid1.rows[i].cells[1].getElementsByTagName("span")[0].innerHTML; //document.getElementById("TextBox_user_id").value = Userid; document.getElementById("TextBox_user_name").value = UseriName; return false; }