gpt4 book ai didi

javascript - 从 Javascript 调用 aspx 代码隐藏中的函数会引发错误

转载 作者:行者123 更新时间:2023-12-03 05:12:00 25 4
gpt4 key购买 nike

窗口完全显示后,我尝试在 .aspx 页面的代码隐藏中调用函数。我尝试使用:

    <script type="text/javascript">
$(document).ready(function () {
PageMethods.CheckForPageChange();
});
</script>

它会抛出以下错误:

0x800a1391 - JavaScript 运行时错误:“$”未定义

我能够让 window.onload 显示警告框,所以我尝试像这样使用它:

    <script type="text/javascript">
window.onload = function () {
PageMethods.CheckForPageChange();
}
</script>

但它会抛出错误“PageMethods 未定义”。

我在“form”标签内有这个:

        <asp:ScriptManager runat="server" ID="ScriptManager1" EnablePageMethods="true"></asp:ScriptManager>

这在我的代码隐藏中:

    [WebMethod]
public void CheckForPageChange()
{
throw new NotImplementedException();
}

有人可以告诉我我在这里缺少什么吗?非常感谢任何帮助!

最佳答案

0x800a1391 - JavaScript runtime error: '$' is undefined

确保 JQuery 已成功加载。

it throws the error "PageMethods is undefined".

1-您必须将服务器端方法设置为静态方法,如下所示

[WebMethod]
public static void CheckForPageChange()
{
throw new NotImplementedException();
}

2-像这样调用服务器端方法

<script type="text/javascript">
function OnSuccess(response){
//Do Stuff
}
function OnError(error){
//Do Other Stuff
}
$(document).ready(function () {
PageMethods.CheckForPageChange(OnSuccess, OnError);
});

3- 将您的脚本放在 <asp:ScriptManager> 之外,单独放在<script>中标签

关于javascript - 从 Javascript 调用 aspx 代码隐藏中的函数会引发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41772289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com