首页 / 知识
关于asp.net:为什么一个按钮控件需要被单击两次?
2023-04-14 05:54:00

Why does a button control need to be clicked twice?我有一个使用VB和Ajax的Web应用程序。我正在使用updatepanels来避免在回发到服务器时产生恼人的"闪烁"。 我想在updatepanel自身中定义一个按钮控件(尝试将其移到外部并出现一些灾难性错误,因此将其留在此处),使当前面板不可见,而同级面板可见。除必须单击两次按钮外,此方法有效。不是双击,而是单击一次而不是再次单击。 在设置断点时,我发现在按钮上附加的代码实际上是在第一次单击时执行的,但是面板没有按预期进行切换。如果单击相同的按钮或更糟糕的是单击其他按钮,则会出现第二个面板的预期行为。但是,在单击第二个按钮的情况下,显示了第三个面板,这是不必要的奖励,由于单击了第二个按钮,第三个面板变得可见。 我假设此行为是由于updatepanel及其Ajax性质引起的。有没有办法避免第二次点击?我在滥用更新面板吗?我真的很想使用模式弹出窗口(直接在AjaxToolKit中使用),但是在回发数据时遇到问题,因此我选择了这种方法。任何见识,帮助,甚至批评都将受到欢迎,因为这困扰了我足够长的时间。谢谢 我认为您的问题是该方法执行后,只有更新面板正在从服务器接收数据。您要更改的面板不在更新面板之外,因此它不知道其属性已更改。 您要么需要进行整页回发,要么要在更新面板中放置要修改的面板。 如果您摆脱了UpdatePanels,使用BackBacks是否可以正常工作?可能是Page_Load或链中其他较高级别的事件在单击事件之前以某种方式"重置"了某些事件。可能是这种情况吗? 我发现这是在2种不同的场景下发生的: 未在控件上设置ID。创建动态控件时,要么将ID保留在标记之外,要么未设置ID。 ASP.Net使用该ID来跟踪操作。 嵌套的UpdatePanels。 Scenerio:使用母版页时,可能会有一个内容占位符,该内容占位符包装在UpdatePanel中,因此页面上的内容中不需要UpdatePanel。然后,在开发页面时,您可能会习惯添加一个UpdatePanel。 尝试在创建动态控件时为其指定ID。由于某种原因,.net要求动态控件才能在这种情况下工作。
就像其他人说的那样,更新面板仅更新其内容,这就是使用它的主要好处之一。 Panel2和pnlPrvCmt必须位于更新面板中,才能使按钮单击方法起作用。另一种选择是将Panel2放在一个更新面板中,将pnlPrvCmt放在另一个更新面板中。然后,只要UpdateMode = Always(默认为默认值),则任何一个更新面板中的任何控件都将导致两者刷新。 这是一个相当简单的解决方案。 (今天早上我遇到了同样的问题。) UpdatePanel无法在其外部呈现内容。因此,正如您所注意到的,更新正在进行中,但是您看不到结果。 最简单的解决方案是强制执行完整的回发。您可以这样操作:
这仍然允许按钮本身通过Ajax在UpdatePanel中进行更新(例如,将其状态更改为"禁用"或"启用")。只有单击按钮,才会发生完整的回发。 您的更新面板位于其他面板中。 那是另一回事吗?仅AFAIK更新面板中的控件将通过AJAX调用进行更新。 我之前遇到过这个问题并已解决,但我不记得如何。我将尝试找到我的旧代码并与您联系。一个想法,您在脚本管理器中启用了EnablePartialRendering吗?也许尝试将两个容器都包装在第三个面板中。 |
最新内容
相关内容
服务器重启命令linux?
服务器重启命令linux?,工作,标准,设备,服务,系统,名称,命令,百度,网络,密码,怎么使用linux命令重启服务器1、shutdown。poweroff。init。reboolinux服务器删除命令?
linux服务器删除命令?,系统,服务,管理,情况,命令,工作,互动,地址,软件,较大,linux系统里怎么删除已经安装的dns服务器如果是清除NSCD上的Cachelinux服务器负荷命令?
linux服务器负荷命令?,信息,电脑,中科,环境,工具,系统,平均,检测,情况,状态,linux服务器监控的几个方法和命令uptime 该命令直观的显示了服务linux常见服务器命令?
linux常见服务器命令?,信息,工作,标准,地址,设备,系统,情况,时间,状态,命令,一个弱弱的LINUX系统问题:LINUX命令行下如何查看服务器配置啊~!?linux服务器基础命令?
linux服务器基础命令?,设备,标准,工作,地址,服务,系统,信息,情况,图片,基础,怎么使用linux命令重启服务器1、shutdown。poweroff。init。reboo服务器linux命令大全?
服务器linux命令大全?,标准,工作,设备,系统,服务,信息,时间,命令,服务器,级别,linux重启命令为关机、init 1为重启,其它运行级别这里不做过多介重启linux服务器命令?
重启linux服务器命令?,标准,设备,工作,命令,网络,系统,提示,主机,服务器,接点,linux重启服务器命令是什么1、怎么使用linux命令重启服务器shutlinux查看服务器配置命令?
linux查看服务器配置命令?,系统,信息,电脑,中科,第一,命令,软件,设备,服务,数据,如何查看服务器配置?服务器配置可以从该服务器的参数里得知。服务器关机命令linux?
服务器关机命令linux?,系统,等级,工作,基础,命令,网络,体系,标准,实战,灵活,linux关机命令是什么linux关机命令有五个,分别如下:shutdown。powerlinux服务器快捷命令?
linux服务器快捷命令?,工作,标准,设备,第一,首页,名称,系统,环境,命令,终端,重启服务器的linux命令首先我首要把linux开机, 命令 rebot 这个是llinux服务器调用命令?
linux服务器调用命令?,系统,地址,设备,标准,工作,密码,中心,盘中,网络,软件,如何通过ssh登录服务器执行linux指令1、打开windows系统中的ssh客linux传服务器命令?
linux传服务器命令?,服务,工具,软件,系统,电脑,密码,设备,照片,工作,网络,linux下,如何把整个文件夹上传到服务器(另一台linux)首先从服务端co