【发布时间】:2023-03-17 15:09:02
【问题描述】:
我有一个Gridview,第一列包含每一行的编辑按钮。点击按钮调用btnEditClick(),这是javascript 中的一个函数。我如何能够访问单击按钮的行以便我可以编辑值?这是我目前所拥有的,
var target = event.target || event.srcElement;
target.id = "btnEdit";
target.style.display = 'none';
var cancel = document.getElementById("btnCancel");
if (cancel != null)
cancel.click();
var grid = document.getElementById("gridRoles"); //get gridview
var row = target.parentElement.parentElement; //doesn't work
var hdn = document.createElement("input");
hdn.type = "hidden";
hdn.id = "hdnId";
hdn.name = "hdnId";
hdn.value = row.cells[1].innerHTML.toString();
row.cells[0].appendChild(hdn);
编辑这是我的网格视图
<asp:GridView ID="gridRoles" runat="server" Width="100%" AutoGenerateColumns="False" Font-Names="Arial" PageSize="12"
Font-Size="11pt" CssClass="textGrid" AlternatingRowStyle-BackColor="#CED8F6" HeaderStyle-BackColor="#F2F2F2"
AllowPaging="True" OnPageIndexChanged ="IndexChanged" OnPageIndexChanging ="PageChange" OnRowDataBound="gridroles_RowDataBound">
<Columns>
<asp:TemplateField HeaderText="Action">
<ItemTemplate>
<asp:Button ID="btnEdit" runat="server" text="Edit" OnClientClick="btnEditClick()" />
<asp:Button ID="btnAdd" runat="server" text="Add" OnClientClick="btnAddClick()" Visible="false"/>
</ItemTemplate>
</asp:TemplateField>
...
【问题讨论】:
-
这很容易用 jQuery 完成。我看到您使用的是直接的 JavaScript。你的项目中包含 jQuery 库吗?
-
不,我没有,这主要是已经编写的代码,我正在尝试添加。这可以只用 javascript 完成还是应该使用 jQuery?
标签: javascript jquery asp.net gridview