ASP.NET 如何使用自定义 JavaScript 中的 __doPostBack 和主页面/内容页面

标签 asp.net javascript master-pages postback

在一个简单的 aspx 页面中,我可以有一个自定义的 JavaScript 函数回发,如所描述的 在 http://www.xefteri.com/articles/show.cfm?id=18简单页面使用链接按钮:

<asp:LinkButton id="CreateFile" runat="server" onclick="CreateFile_Click" />

后面的代码有 VB 子例程:

Sub CreateFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

和一个 Javascript 自定义函数:

 __doPostBack('CreateFile','');

当我将代码移动到具有相应母版页的内容页时 简单的例子不再有效。

我知道当一个 涉及母版页,我在 Javascript 中使用了正确的 ID。 例如,对于 LinkBut​​ton ID,我使用 '<%=CreateFile.ClientID%>' 生成的 HTML 中的 Javascript。尽管如此,我还是想不通 了解如何在涉及母版页时从 Javascript 获取回发。 更准确地说,如果混合使用母版页,代码甚至无法编译 但结果是:

'CreateFile_Click' is not a member of 'ASP.testmaster_aspx'

如果我从 LinkBut​​ton 标记中删除 onclick="CreateFile_Click"它会编译 但不起作用。如果从更简单的版本中删除了 onclick,则类似 没有母版页,它也不会像预期的那样工作。

有关如何从自定义 Javascript 函数获取回发的任何输入 使用母版页将不胜感激。

最佳答案

您是否硬编码了对 __doPostBack 的调用?

尝试使用 Page.GetPostBackEventReference

在您的 javascript 中获取有效句柄。

一旦写出有效的回发事件引用,就可以将其包装在本地函数中,然后可以从母版页调用该函数。

if (window.myPostBackfunction) // check if it exists
  myPostBackFunction();

关于ASP.NET 如何使用自定义 JavaScript 中的 __doPostBack 和主页面/内容页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3033735/

相关文章:

ASP.NET TreeView 性能

c# - 通过 asp.net 中的循环将值添加到下拉列表

c# - 获取连接到 SignalR hub 的监听器、客户端的数量

asp.net - 在 ASP.NET 中存储常量的单个文件/类

javascript - 谷歌登录 : How to use redirect_uri in javascript api

javascript - 如何将 React 组件用作遗留 HTML/JS 应用程序的一部分?

javascript - 是否有任何理由对 $ (jQuery) 进行嵌套调用?

asp.net - 如何通过母版页隐藏某些页面上的内容而不是其他页面上的内容?

asp.net - 主页页脚对齐方式不正确

asp.net - 主页未正确加载