如何在单击LinkBut​​ton时更新PlaceHolder

时间:2011-12-15 13:48:48

标签: c# asp.net html postback placeholder

我有一个包含5个标签的简单网页。每个标签都是LinkButton。主体是<div>,我在其中放置PlaceHolder。现在,我想在选项卡上进行单击事件,因此每当我单击其中一个选项卡时,PlaceHolder都会相应更改。所以,我在这里有两个问题:

  • 如何停用PostBack并使LinkButton仅更新PlaceHolder(使用C#)?

  • 我可以使用HTML页面加载/重新加载PlaceHolder吗?

感谢。

2 个答案:

答案 0 :(得分:1)

如果您希望在没有回发的情况下完成所有这些操作,那么我建议您远离服务器端控件,例如LinkButtonPlaceHolder。作为客户端关注点,您正在努力实现的目标更容易实现。

看看jQuery UI tabs。查看各种演示中的代码(单击该页面上的“查看源代码”以查看HTML的简单程度),您可以看到它只是附加到常规HTML。没有服务器端。通过使标签标题显式为HTML元素(演示中的li / a元素),您可以绕过整个“回发”内容,无论如何都不需要。

这些标签上没有什么特别的事情发生。单击每个选项卡只会更新选项卡元素的CSS(在本例中为div)以更改其display属性,相应地隐藏和取消隐藏。

需要注意的一点是代码如何处理服务器端和客户端功能的这种分离。从服务器端代码(ASP.NET的东西)的角度来看,它只是一个页面。没有任何动态或特殊的事情发生。它呈现整个页面与其他任何页面。客户端代码(JavaScript / CSS / HTML的东西)提供了服务器端代码完全未知的用户体验。就ASP.NET而言,它正在向浏览器提供一个页面。没什么。

答案 1 :(得分:0)

如果您需要在ASP.NET中不使用JQuery(Wonderful),请尝试使用UpdatePanel

它会回发,但只能更新占位符部分。