c# - Document.Ready() 在 PostBack 后不工作

标签 c# javascript jquery asp.net user-controls

我有一个页面,在更新面板中包含一个用户控件。 $(document).ready(function() ) { 在页面首次加载时被调用并正确执行代码,但如果用户单击按钮(在用户控件内),document .ready() 没有被调用(document.loadonload 也不起作用)

我在网上对此进行了研究并发现了类似的问题,但没有任何内容可以解释为什么这不起作用。 document.ready 不工作还有哪些其他原因?

最佳答案

这将是 partial postback 的问题. DOM 不会重新加载,因此不会再次调用文档就绪功能。您需要像这样在 JavaScript 中分配一个部分回发处理程序...

function doSomething() {
   //whatever you want to do on partial postback
}

Sys.WebForms.PageRequestManager.getInstance().add_endRequest(doSomething);

上面对 add_endRequest 的调用应该放在页面首次加载时执行的 JavaScript 中。

关于c# - Document.Ready() 在 PostBack 后不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9586903/

相关文章:

c# - 如何避免使用 async void 事件处理程序重入?

c# - 如何将动态占位符分配给文本框?

javascript - Jade/Mongo 输出中的换行符

javascript - 等待 ajax 函数完成,直到使用间隔再次重新加载该函数

c# - 如何找到所有包含匹配模式的类型/成员的程序集?

C# Entity Framework 自定义约束

javascript - 通过 React Route 传递的 Props 无法被子组件访问

javascript - 如何使用 dgeni 生成索引应用程序/文件

javascript - 从元素中删除事件 .each 与 .unbind 在 jQuery 中...有什么区别?

javascript 检查正则表达式是否适用