问题标签 [pagerequestmanager]

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 回答
2846 浏览

asp.net - 为什么我的函数在 UpdatePanel 加载后运行多次

所以我想在我的更新面板更新后运行一些 javaScript 函数,所以我有:

使用上面的代码,如果我更新一次面板,“foobar”将被警告一次;如果我第二次更新面板,“foobar”会弹出两次;第三次触发面板更新,“foobar”弹出三次……第四次弹出四次,依此类推……

这是什么原因造成的??

谢谢~~~

0 投票
1 回答
246 浏览

vb.net - UpdatePanel initializeRequest Control Values Too Late To Change?

Here is my code:

When the panel loads, the CKEditor is applied to the textarea. When the panel posts back, the editor must be destroyed to put the data back into the textarea. In this code, the Editor is not destroyed in time to update the postback data. It works if I do this:

The problem is the UpdatePanel is not always triggered with that button, sometimes it's triggered remotely. It seems that by the time initializeRequest is called, the value for the textarea is already set. Is there a way to update that value at this point?

0 投票
1 回答
6714 浏览

javascript - 使用 JavaScript 进行 ASP.NET 回发(单击 LinkBut​​ton) - 回发发生但未发生 Click 事件

我正在使用一些脚本来导致回发。这是上下文:

  • 用户单击链接以执行需要知道其当前位置的功能
  • 脚本从浏览器获取当前位置(使用 navigator.geolocation.getCurrentPosition)
  • 当它有位置时(上面的调用是异步的 - 你必须等待用户同意分享他们的位置)我希望脚本将位置发布回服务器。我通过模拟隐藏链接按钮的回发来做到这一点。

以下是相关代码:

在后面的代码中,我有一个用于隐藏链接按钮(btnSubmitLocation_Click)上的单击事件的处理程序。但是,这永远不会被调用。回发确实发生得很好,但要处理它,我必须在 Page_Load 期间检查 Request["_ EVENTTARGET"] 和 Request[ "_EVENTARGUMENT"]以验证它是我想要的回发。

我将如何调整我的代码以导致调用 btnSubmitLocation_Click?

PS - 不确定这是否相关:隐藏的链接按钮位于更新面板内。

0 投票
1 回答
5212 浏览

c# - InvalidOperationException,PageRequestManager 不能被多次初始化

我在 Dotnetnuke 自定义模块中使用 Telerik 控件,所有 ajax 控件都发生了问题,结果是每次回发请求而不是 Ajax 请求。

在 Firebug 我可以看到,

异常来源是Telerik.Web.UI.WebResource.axd

我知道这不是 Telerik 本身,而是 Telerik 和 DOTNETNUKE AJAX 之间的冲突,但是我不知道在哪里。

有什么想法可以捕捉到这个异常并处理它?

0 投票
2 回答
3968 浏览

asp.net - Sys.WebForms.PageRequestManager.getInstance() 在 IE 10 和 Windows 8 中不支持

我在 Windows 8 的 IE 10 上的应用程序中遇到了一些 asp.net ajax 问题。但它在 IE 10 的兼容模式下运行正常。

您可以在此处查看我的现场演示,它在所有浏览器而不是 IE 10 中都可以正常工作(在 Windows 7 上的 IE9 中也可以正常工作)。

不知道是什么原因?

在我的页面上,我正在注册此活动:-

请帮我。此致

0 投票
1 回答
76 浏览

c# - 在冗长的异步 Postack 期间从进度表中查询

我正在将一个数据库接口从 InfoPath 迁移到 Visual Studio 中的 .NET Web 应用程序。SQL Server 数据库设置为用户执行单个程序,启动其他程序,启动更多程序等。整个数据库完成其程序(“模型运行”),大约需要 30 分钟.

在这些单个过程中的每一个结束时,都会将一条记录插入到名为 sysProgressAudit 的表中。我想将此表绑定到更新面板中的网格视图,以便它可以不断刷新并且用户可以监控模型运行的进度。但是,由于数据绑定也是回发,恐怕我无法在模型运行时同步刷新gridview(因为原始存储过程不会完全返回)。

是否可以在任何 PageRequestManager 事件中不断刷新更新面板?您认为对于长时间运行的查询和需要同时刷新表的最佳解决方案是什么?

我想我可以启动查询而不让它返回任何东西(原始 InfoPath 方法),但我会失去很多错误处理和异常捕获功能......

0 投票
1 回答
1126 浏览

javascript - Sys.WebForms.PageRequestManager.getInstance() 在 IE 10 中不起作用

我在 IE 10 上的应用程序中遇到了一些 asp.net ajax 问题。但它在 IE 10 的兼容模式下运行正常。

在我的页面上,我正在更新面板中注册此事件:-

此代码在所有其他浏览器中运行良好

请帮我。此致

0 投票
0 回答
129 浏览

asp.net - PageRequestManager 未填充“args._postBackElement”参数

当使用 ASP.NET UpdatePanel 并在前一个回发仍在进行时导致回发时,默认操作是取消第一个并允许第二个接管。

我已经建立了一种相反的机制:保留第一个并取消来自同一启动控件的任何后续请求。

在我的机器上运行良好。但是,它不适用于同事的机器或我们的登台服务器。

问题的关键部分是:当PageRequestManager.initializeRequest事件被触发时,args我机器上的参数包含一个填充_postBackElement对象,而在其他机器上这个属性是null

据我们所见,其他一切都是一样的——触发请求的标记/代码、<asp:ScriptManager />声明、web.config...

那么为什么其他机器上的 PageRequestManager 没有填充这个属性,而在我的机器上填充了这个属性呢?

0 投票
2 回答
1647 浏览

jquery - $ 未定义 [jQuery,MasterPage,UserControl,Shared/static Event handler,external javascript]

不幸的是,我无法在我的应用程序之外重现此问题。我有一个 VS2012 项目,我可以发给任何愿意看的人。它单独适用于我,但不适用于更大的应用程序。

我的目标是在母版页中有一个通用的覆盖控件,页面可以在部分回发期间冒泡显示事件。

这是我所拥有的:

  • 在叠加层中显示消息框的用户控件
  • 获取 PageRequestManager 对象并添加 pageLoaded 事件的 javascript 文件
    • 事件处理程序检查隐藏控件的值并使用 jquery 显示/隐藏消息
  • 带有脚本管理器的母版页和包装在更新面板中的用户控件
  • 包含一个共享事件的类,用于提醒母版页需要显示一条消息
  • 一个带有更新面板的页面,其中包含一个 div、一个按钮和一个文本框
  • 一个css文件

测试应用程序中会发生什么:

  • 在框中输入文本并单击按钮
  • 按钮点击事件
    • 将文本复制到更新面板中的 div
    • 调用自定义类中的DisplayMessage方法提醒母版页
  • DisplayMessage 实例化并填充自定义事件参数并引发事件
  • 母版页中的处理程序设置用户控件的属性并在其 UpdatePanel 上调用 Update
  • 页面显示覆盖并触发 pageLoaded [1]
  • javascript 函数评估隐藏控件的 Value 属性并显示消息。
  • 用户单击确定按钮
  • 点击处理程序(服务器端)设置隐藏值并在用户控件的更新面板上触发更新
  • 消息消失

“在现实生活中”会发生什么:

  • 在点 [1],javascript 失败,$ 未定义

chrome 控制台允许我输入 jQuery 并显示元素。

不涉及 jq 插件,脚本管理器位于主窗体的顶部。jquery 参考在没有“http/https”的指向 google 的 master 中。

我尝试在 ScriptManagerProxy 中添加外部脚本,但无济于事。事实上,测试应用程序与

在用户控件标记的底部。

您能提供的任何帮助将不胜感激。

干杯,.pd。

编辑:

根据要求提供脚本参考:

这是主页:

这是 UserControl 标记:

该 javascript 文件中的代码如下所示:

编辑:

嘿 - 是否有可能异步加载脚本?有什么工具可以用来验证什么时候发生的事情吗?我问是因为我将 javascript 更改为以下内容:

现在一切正常。所以我的理论是 pageLoaded 正在另一个看不到 jquery 的线程上调用我的 popup_msg_init 函数,并且手动搜索 dom 导致的延迟给了它足够的时间来加载 cuz 在调用显示/隐藏函数时,一切都很正常.

所以我想我会通过在那里设置超时来检查:

但它又回到“$ 未定义”。

对此有何评论?

0 投票
1 回答
303 浏览

javascript - 取消对同一目标的异步回发

我正在使用手动启动的回发在我正在制作的演示中做一些魔术。

这是我用来启动它们的功能:

我遇到的问题是,如果在用户触发新的回发之前请求没有完成,请求就会被取消。

我想到的唯一解决方案是向查询字符串添加一个随机值,但为了这样做,我将不得不放弃使用此函数并可能创建一个 ajax 请求,因此需要大量返工才能实现我的功能发展至今。

有任何想法吗?