我在 asp.net 应用程序中工作。我有一个复选框和三个文本框updatepanel
。我有另一个更新面板。我正在使用 Jquery 隐藏显示文本框。我想在第一个 updatepanel 的复选框选中/取消选中(已经有客户端事件)时更新第二个 updatepanel 内容我该怎么做?
我不想使用__doPostBack('__Page', 'MyCustomArgument');
,因为它会回发整个页面。
请建议。
我可能误解了您的要求,但您始终可以强制第二个更新面板从后面的代码中刷新
SecondPanelId.Update();
我当然可以错过一些东西
要从 javscript 强制更新,我会尝试
function forceAJAXPostback()
{
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm._doPostBack('btnIntheUpdatePanel','');
}
我知道您说没有_doPostBack
- 但因为您在更新面板中指定按钮,它应该执行您需要的部分回发。如果没有按钮,则放一个按钮并用 css 隐藏它,即display:none
这是对该技术的一个很好的解释。
您还需要确保在 updatepanel 标记中将该按钮指定为异步触发器
<asp:UpdatePanel>
<!-- rest of panel -->
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnIntheUpdatePanel" EventName="Click" />
</Triggers>
</asp:UpdatePanel>