我有一个包含几个项目的中继器,其中有一个DropDownList和一个按钮。在Repeater控件中选择DropDownList项目
此处的目标是将DDL中的项目与选定的中继器行相关联。
ASPX代码:
<asp:Repeater ID="sharedPlansList" runat="server"
onitemdatabound="sharedPlansList_ItemDataBound"
onitemcommand="sharedPlansList_ItemCommand">
<ItemTemplate>
<div>
<h1>· <%# Eval("ProductName") %></h1>
<div>
Associer le domaine :
<asp:DropDownList runat="server" ID="domainList" />
<asp:Button ID="associateDomaine" Text="Associer" runat="server"
CommandArgument='<%# Container.DataItem %>' />
</div>
<div>
Domaines :
<asp:BulletedList runat="server" ID="sharedPlanDomains" />
</div>
</div>
</ItemTemplate>
</asp:Repeater>
问题:
当我点击按钮各一个无效的回发或回调异常(无效的回发或回调参数事件验证使用配置中启用时间,我有。或<%@ Page EnableEventValidation =“true”%>在页面中出于安全目的,此功能验证回发或回调事件的参数来自最初呈现它们的服务器控件如果数据有效且期望,请使用ClientScriptManager.RegisterForEventValidation方法为了注册回发或回调数据进行验证。 )。但是没有任何真正奇特的东西,一切似乎都很标准我不会通过JavaScript添加任何东西或控件。
我已经看到了解决方案,您可以将<pages enableEventValidation="false" />
放在web.config
中,但我不确定这是一个很好的解决方案,因为我想确保保留asp.net内置的安全模型。
是否存在任何解决方法?
是否该CommandArgument/Name实际上工作?因为我有类似的东西,我根本无法完成它!完全忽略了命令参数。 – Sebastian 2009-08-31 20:04:23