我最近更新到IE9,我得到了一些奇怪的问题。我在updatepanel中有一个带有Gridview的页面,grid中有一个用于编辑/删除记录的命令字段。命令字段使用图像作为按钮类型。当我点击按钮时,我得到一个Javascript错误,上面写着:
Error: Sys.ParameterCountException: Parameter count mismatch. 此错误仅在我使用以下组合(.NET 3.5 + IE 9+图像类型按钮)时出现。如果我使用的是.NET 4.0或IE 8或链接/按钮类型的按钮,我不会得到相同的错误。
<asp:CommandField ButtonType="Image" CancelImageUrl="~/Images/undo.jpg"
DeleteImageUrl="~/Images/delete.jpg" EditImageUrl="~/Images/edit_1.jpg"
InsertVisible="False" ShowDeleteButton="True" ShowEditButton="True"
UpdateImageUrl="~/Images/accept.jpg">
</asp:CommandField>你知道我怎么才能避免这种情况吗?
谢谢!
发布于 2011-07-13 20:55:47
嗨,我已经找到解决方案了。我已经在ScriptManager中设置了ScriptMode="Release“。默认值为Auto。它解决了我的问题。您也可以使用Auto进行同样的设置,但您必须设置当retail设置为true时,ASP.NET会禁用某些配置设置,例如跟踪输出、自定义错误和debug capabilities.just set retail = true您可以使用ScriptMode= auto。
发布于 2011-07-07 16:38:23
我也遇到过这个问题。我使用的是.NET 3.5 + IE 9+图像类型按钮。删除updatepanel后,错误消失了
发布于 2011-07-07 20:50:54
如果你想保持更新面板,你可以使用TemplateField代替ButtonField或CommandField。
<asp:TemplateField HeaderText="Contacts">
<ItemTemplate>
<asp:ImageButton ImageUrl="../../images/icons/contacts.png" CommandArgument="<%# CType(Container, GridViewRow).RowIndex %>" CommandName="yourCommand" runat="server" />
</ItemTemplate>
</asp:TemplateField>
Dim row As GridViewRow = uxgvServiceUsers.Rows(Convert.ToInt32(e.CommandArgument))
If e.CommandName.Trim.Equals("yourCommand") Then
Response.Redirect("./Page.aspx")https://stackoverflow.com/questions/6137971
复制相似问题