问题标签 [scriptmanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
783 浏览

asp.net - 有什么区别,如果我们在 asp.net 中编写带有结束标签的脚本管理器和作为空标签的脚本管理器

如果我们以这种格式编写带有结束标签的脚本管理器和作为空标签的脚本管理器有什么区别:

和脚本管理器作为一个空标签。

我在一些面试问题的书中发现了这个问题..请给我一些关于它的知识或给我任何链接..

0 投票
1 回答
640 浏览

asp.net - AJAX:状态栏:在函数执行时强制更新 UpdatePanel

我在更新面板中有一个标签,我想将其用作状态栏。

基本上,用户单击一个按钮,该按钮执行执行一系列任务的主要功能。我想通知用户函数的状态,例如:

第 1 阶段:检索数据...

第 2 阶段:计算值...

第 3 阶段:打印值...

第 4 阶段:完成!

我尝试直接从函数更新更新面板,但它只在函数结束时更新面板(第 4 阶段)并显示“完成!” (我理解它应该如何工作)。

我一直在研究计时器和线程,以尝试将面板更新为与主要功能分开,但我想我会在这里发布以防有人有更好的想法?

0 投票
1 回答
533 浏览

asp.net - 每个 ASP.NET 页面注册多个复合脚本

我想将几个复合脚本放置到 Page。但是 ScriptManager 包含不可枚举的属性 CompositeScript。

每个页面可以注册多个 CompositeScript 吗?

0 投票
1 回答
931 浏览

ajax - UpdatePanel 不会在第一次单击链接按钮时触发

我在 .aspx 页面上有一个更新面板。在这个 aspx 页面中,我有一些 ascx 控件。其中一个控件有我的链接按钮。当按下该按钮时,我希望得到我想要得到的结果,但我希望不会看到页面闪烁或看到页面回发。它两者兼而有之。在我更改了一些搜索信息并再次单击链接按钮后,页面会执行异步回发(这是我在第一次单击时所期望的)。通过提琴手运行此序列后,我看到第一次单击按钮时,我错过了所有后续请求中包含的一些信息。

ctl00$ScriptManager1=ctl00$cplContents$updatePanelOrderSearch|ctl00$cplContents$ucOrderSearchControl$btnRange& EVENTTARGET=ctl00%24cplContents%24ucOrderSearchControl%24btnRange& .....

以上是我在点击 2、3 等时得到的结果。当我第一次点击链接按钮时,这不在请求中。我想知道这是否是我第一次得到完整的非异步回发的原因。

任何帮助,将不胜感激。我的更新面板代码如下。

谢谢

0 投票
4 回答
2321 浏览

asp.net - 在异步回发期间发出并发 AJAX WCF Web 服务请求

我想在使用 AJAX 的 ASP.NET WebForms 页面上的长时间运行任务期间提供状态更新。

有没有办法让 ScriptManager 在异步回发的同时执行和处理 Web 服务请求的脚本?

我在页面上有一个发出 Web 服务请求的脚本。它在页面加载时运行,并定期使用 setInterval()。它在异步回发启动之前正常运行,但在异步回发期间停止运行,并且在异步回发完成之前不会再次运行。

我有一个带有按钮的 UpdatePanel 来触发异步回发,该回发执行长时间运行的任务。我还有一个 AJAX WCF Web 服务的实例,它可以正常工作以获取数据并将其呈现在页面上,但是就像我说的那样,它在异步回发完成之前不会获取并呈现数据。

在异步回发期间,长时间运行的任务将更新从页面发送到 Web 服务。

问题是我可以调试并单步执行 Web 服务并查看状态更新是否已正确设置,但在异步回发完成之前,客户端脚本不会检索更新。

似乎脚本管理器正忙于执行异步回发,因此在回发完成之前它不会通过 setInterval() 运行我的其他 JavaScript。

有没有办法获取脚本管理器,或者以其他方式运行脚本以在异步回发期间从 WCF Web 服务获取数据?

我尝试了各种使用 PageRequestManager 在客户端 BeginRequest 事件上为异步回发运行脚本的方法,但它运行脚本,然后在页面请求执行时停止处理应该通过 setInterval() 运行的代码.

0 投票
2 回答
2187 浏览

javascript - ScriptManager 复制 javascript

我有一个用户控件,例如可以在 gridview itemtemplate 中使用,这意味着该控件可能会或可能不会在页面加载时出现在页面上。在控件位于项目模板内的情况下,我将通过异步回发(通过更新面板)弹出网格视图。

控件本身是注册器脚本块,因为它依赖于 javascripts。首先我用

但这不适用于异步回发(更新面板),因此我随后尝试使用 ScriptManager 进行相同操作,它允许我在异步回发后在页面上注册脚本。伟大的!。

但是,ScriptManager(我所知道的)没有查看脚本是否已经在页面上的功能,所以我将为每个回发生成脚本块的副本,这当然是不受欢迎的行为。

我在 Google 上进行了一次运行,发现我可以调用 PageRequestManager 的 Dispose() 方法,这确实有效,因为它清除了脚本然后再次添加它们(这也解决了我从删除中删除未使用的脚本块的问题控制)。

但是,自从我在这里发帖以来,当然有一个缺点:)。Dispose() 方法也会在母版页上处理实例,这导致在那里运行的脚本将在异步回发后停止运行(例如 updateprogress)。

那么,有没有办法使用 ScriptManager 或任何其他工具检查页面上是否已经存在脚本,这会阻止我插入重复的脚本?此外,有没有办法删除某些脚本块(例如,当我删除 itemtemplate 中的项目时)。

提前非常感谢。

0 投票
1 回答
2098 浏览

asp.net - 当存在 ScriptManagerProxy 控件时,以编程方式禁用 ScriptManager

我已尝试按照此建议以编程方式禁用 ScriptManager,但无济于事: 在某些页面上禁用 ScriptManager

标准脚本管理器.ascx

标准脚本管理器.ascx.vb

如果DisableAllScripts为 true,<h1>则不会显示,但脚本仍会添加到页面中。我怀疑这是因为我在页面的其他地方有 ScriptManagerProxy 对象。

我也试过Me.Controls.Clear()Page.Init,但我明白了

令人抓狂的是,没有一种简单的方法可以禁用 ScriptManager。该控件没有Enabled属性,您无法设置ScriptManager.Visible=False.

有任何想法吗?

0 投票
3 回答
2521 浏览

asp.net - 将版本号附加到 asp:ScriptManager 的复合脚本标签

我们正在尝试使以下方案正常工作:

我们使用 asp:scriptmanager / CompositeScripts 将我们的脚本组合成几个脚本块,但是在每次部署到测试系统之后,我们都会遇到测试人员无法获得更新版本的 css 和 javascript(浏览器缓存)的问题。对于 CSS,我们定义了自己的 css 用户控件,该控件将 Siteversion 参数“?v=1.0.190”附加到 css url 中。此站点版本在 web.config / appsettings 中定义,并且在每次部署时都会受到影响。

我们希望能够对 javascripts 使用相同的策略,但到目前为止我还没有取得任何成功。渲染脚本标签时。Scriptmanager 呈现

鉴于当前配置的站点版本是 1.0.190,我希望它呈现

如何从脚本管理器获取“脚本”html 输出,以便进行更改?它似乎不存在于 Render、RenderChildren 或 RenderControl 中呈现的内容中

你的 安德烈亚斯

0 投票
2 回答
2350 浏览

asp.net - 一个页面可以有多个 ScriptManagers 吗?如果是,那么在什么条件下需要它?

一个页面可以有多个 ScriptManagers 吗?如果是,那么在什么条件下需要它?

0 投票
1 回答
2509 浏览

c# - 检查页面上是否已经加载了 javascript 文件

如果页面上已经加载了 javascript 文件,如何检查 C#?假设我在加载到页面的不同命名空间中有一个用户控件。我想在向脚本管理器注册之前查看脚本文件是否不存在。