码迷,mamicode.com
首页 > 其他好文 > 详细

Repeater控件中触发按钮事件出现System.ArgumentException: 回发或回调参数无效。在配置中使用 < pages enableEventValidation="true"/>

时间:2015-04-22 20:50:29      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:

今天,在Repeater控件中添加了一个按钮,可是在执行时确提示

System.ArgumentException: 回发或回调参数无效。在配置中使用 < pages enableEventValidation="true"/>

 <asp:Repeater ID="rpList" runat="server" OnItemCommand="rpList_ItemCommand">
            <ItemTemplate>
                <div class="article pic" id='<%#Eval("SID") %>'>
                    <h4>
                        <%#Eval("sName") %></h4>
                    <br />
                    <p class="brief">
                        招生批次:<%#Eval("sBatch") %></p>
                    <p class="brief">
                        学号:<%#Eval("sNumber") %></p>
                    <p class="brief">
                        学生类型:<%#Eval("sType")%></p>
                    <p class="brief">
                        专业层次:<%#Eval("sMajorType")%></p>
                    <p class="brief">
                        专业:<%#Eval("sMajor")%></p>
                    <p class="brief">
                        姓名:<%#Eval("sName")%></p>
                    <p class="brief">
                        性别:<%#Eval("sSex")%></p>
                    <p class="brief">
                        身份证号码:<%#Eval("sCardID")%></p>
                    <p class="brief">
                        学员密码:<asp:Button ID="bInitial" runat="server" Text="初始化密码" CssClass="button blue"  CommandName="updatepass" CommandArgument='<%#Eval("SID") %>'  /></p>
                    <p class="brief">
                        手机:<%#Eval("sPhone")%></p>
                    <p class="brief">
                        邮箱:<%#Eval("sEmail")%></p>
                    <p class="brief">
                        学历号:<%#Eval("sEduNumber")%></p>
                    <p class="brief">
                        班级:<%#Eval("sClassmate")%></p>
                </div>
            </ItemTemplate>
            <FooterTemplate>
                <br />
                <asp:Label ID="lbmessage" Text="糟糕了,空空如也,找不到任何内容.." ForeColor="DarkOrange" runat="server"
                    Visible='<%#bool.Parse((rpList.Items.Count==0).ToString())%>'>         
                </asp:Label>
            </FooterTemplate>
        </asp:Repeater>

后台代码:[CommandArgument就是要的参数 CommandName是命令名称]

protected void rpList_ItemCommand(object source, RepeaterCommandEventArgs e)
    {
        if (e.CommandName == "updatepass")
        {

            string id = e.CommandArgument.ToString();
            try
            {
                var vStu = from s in ydtvu.Students
                           where s.SID.ToString().Trim() == id.ToString().Trim()
                           select s;

                vStu.First().SPass = ToMD5.getMd5Hash("123456").ToString().Trim();
                ydtvu.SubmitChanges();
                ClientScript.RegisterStartupScript(this.GetType(), "failure", "$(function(){asyncbox.alert('恭喜您,密码初始化成功!当前密码:123456','江苏广播电视大学盐都学院');})", true);
            }
            catch (Exception exp)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "failure", "$(function(){asyncbox.alert('对不起,密码初始化失败,请稍候重试!','江苏广播电视大学盐都学院');})", true);
            }
        }

可是,一点按钮,页面就出现了错误,提示回发或回调参数无效。

经过查找资料,找到以下方法:

页面上是否有用上数据绑定控件,如果用的话,请放在 if(!IsPostBack) { //绑定 } 如果没有的话,可以将 页面上EnableEventValidation 属性设置为false

将原先Repeater控件的绑定事件放到if(!IsPostBack){//绑定}中后,不再提示该错误。

Repeater控件中触发按钮事件出现System.ArgumentException: 回发或回调参数无效。在配置中使用 < pages enableEventValidation="true"/>

标签:

原文地址:http://blog.csdn.net/aigochina/article/details/45198505

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!