我有一个linkbutton只能正常使用一次,第二次单击在Chrome中没有响应,但在Internet Explorer中有效。这仅在我的生产环境中发生,但开发人员工作正常。
在调试时,我可以判断出没有到达我的linkEdit_Click
子级。
我尝试了EnableViewState="false"
,但没有成功。
我已经更改了linkEdit_Click
的调用方式,在网格视图中使用CommandArgument并将OnClick
的{{1}}更改了。
在DevTools中,我发现第二次点击时出现403禁止错误,但我不知道如何解决
我的代码是这样的:
OnCommand
后面的代码:
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="grid1>
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="linkEdit" runat="server"
Text="Update" OnClick="linkEdit_Click" CausesValidation="false">
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
答案 0 :(得分:0)
ASP HTML代码,因为您使用的是LinkButton属性,所以更改为“ CommandName”而不是OnClick。
<asp:LinkButton ID="linkEdit" runat="server" Text="Update" CommandName="edit" CausesValidation="false">
隐藏代码使用此功能触发命令。
Private Sub grid1_rowEditing(Byval sender as Object, Byval e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles grid1.RowEditing
grid1.EditIndex = e.NewEditIndex
End Sub
Private Sub grid1_RowCommand(byval sender as Object, Byval e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles grid1.RowCommand
if e.CommandName = "edit" Then
'' Do something here
end if
end sub