【发布时间】:2012-11-06 13:05:00
【问题描述】:
我从事一个简单的 ASP Webform 项目(asp 框架 4.0),并使用 VS 2010。
我的网站上有一些页面要使用 UpdatePanels。
在我网站的另一个页面上,我需要使用 ModalPopupExtender 控件,该控件包含在 AjaxControlToolkit 库中。
我遇到的问题是如果我在我的项目中包含AjaxControlToolkit库,我的UpdatePanels根本不起作用(不需要实现这个库的任何组件,只需添加对它的引用在我的项目中)。
如果我删除对 lib 的引用,它可以正常工作。
你知道如何调和这两个元素吗? UpdatePanel 和 AjaxControlToolkit 库?
非常感谢您的建议
这是我使用的简单 UpdatePanel 代码:
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand" OnItemDataBound="Repeater1_ItemDataBound">
<ItemTemplate>
<asp:LinkButton ID="lnk" runat="server" Text="show" CommandName="show"></asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Label runat="server" ID="label1"></asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Repeater1" EventName="ItemCommand" />
</Triggers>
</asp:UpdatePanel>
在后面的代码中,我使用这个:
protected void Page_Load(object sender, EventArgs e)
{
Repeater1.DataSource = new List<String>(){"zero", "un", "deux", "trois","quatre"};
Repeater1.DataBind();
}
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
LinkButton lnk = ((LinkButton)e.Item.FindControl("lnk"));
lnk.CommandArgument = e.Item.ItemIndex.ToString();
}
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "show")
label1.Text = "You click" + e.CommandArgument;
}
【问题讨论】:
-
您肯定在浏览器中遇到了一些 javascript 错误。看看你是否能在你的 IE 中看到任何 JS 错误并将它们粘贴到这里。
标签: asp.net updatepanel ajaxcontroltoolkit