加载后页面中的按钮不起作用

本文关键字:按钮 不起作用 加载 | 更新日期: 2023-09-27 18:24:47

执行页面后,页面中的按钮不起作用。该按钮的功能是从提供的路径中检索图像。isPostBack的使用在这里很重要,但我不知道在哪里使用它。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class pictures : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
            Image1.ImageUrl = "~/Images/10003253_697566723628663_1903222345_n.jpg";
            Image2.ImageUrl = "~/Images/1503929_10152290013211351_1280973165_n.jpg";
            Image3.ImageUrl = "~/Images/1558538_697566540295348_743334414_n.jpg";
    }
}

当页面被加载,我点击按钮,然后提供这个错误消息:

"/"应用程序中的服务器错误

回发或回调参数无效。使用配置中的或<%启用事件验证@页面中的页面EnableEventValidation="true"%>。为了安全起见为此,此功能验证要回发或回调的参数事件源自最初呈现的服务器控件他们如果数据有效且预期有效,请使用ClientScriptManager.RegisterForEventValidation方法,以便注册回发或回调数据以进行验证。"

aspx代码为:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="pictures.aspx.cs" Inherits="pictures" MasterPageFile="~/MasterPage.master"%>

    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
        <asp:Image ID="Image1" runat="server" Height="200px" />
        <asp:Image ID="Image2" runat="server" Height="200px" />
        <asp:Image ID="Image3" runat="server" Height="200px" /><br />
        <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" is/>
    </asp:Content>

加载后页面中的按钮不起作用

原因是返回服务器的数据包含一些客户端脚本代码(主要是Javascript),这将导致某种安全宣传,因此默认情况下,enableEventValidation设置为true。

对于特定页面,您可以将其设置为

<%@ Page EnableEventValidation="false" %>

或者在Web.Config中,您可以使用

<pages enableEventValidation="false"/>  //for all pages

相同问题

无效的回发或回调参数。使用<pages enableEventValidation=";真"/>配置中或<%@页面

asp.net:无效的回发或回调参数

在您的aspx文件中,您应该将第一行放为:

<%@ Page EnableEventValidation="false" %>

如果您已经拥有<%@页面,所以只需添加其余=>EnableEventValidation="false"%>

Web.Config:

<pages enableEventValidation="false"/>

它有助于在aspx中处理所有页面。

Webcontrol"Content"是一个特殊的控件:

它用于替换母版页占位符中的控件。

你可以查看msdn:

http://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.content(v=vs.110).aspx

这篇SO文章包含了更多的细节:

内容控件无法从内容页访问?

你能暂时删除<asp:Content></asp:Content>标记,看看问题是否仍然存在吗?

出于一致性和安全性的原因,如果可以避免的话,最好不要更改默认的EnableEventValidation属性值。