gpt4 book ai didi

asp.net - Ajax 函数抛出 WebServiceFailedException

转载 作者:行者123 更新时间:2023-11-30 18:58:28 25 4
gpt4 key购买 nike

我正在使用相同的 asp.net 页面来编辑和添加数据,只是相应地禁用和启用了一些字段。现在,当我从添加页面调用 webmethod 时,它工作正常,但是当我从编辑页面调用它时,它就不行了。虽然我使用相同的 javascript 函数来调用服务器端方法。请看代码:.aspx:

function KeyCheck()
{
var KeyID = event.keyCode;
if(KeyID==46)
{
PageMethods.Delete_files(CurrentObj.id);
}

现在,当我尝试通过编辑调用相同的方法时,它会生成以下错误:

Microsoft JScript runtime error: Sys.Net.WebServiceFailedException: The server method 'Delete_files' failed with the following error:

最佳答案

如果你看here他们讨论了一个类似的问题。虽然没有选择最后一个答案,但我仍然建议按照他说的去做。在您的第一个参数之后,您可以传递两个函数回调;一个用于成功的 Ajax 调用,一个用于失败。

你的函数应该看起来更像这样:

var onDeleteSuccess = function(result) {
//Successfully deleted files, maybe display confirmation to user.
};
var OnDeleteError = function(result) {
//Deleting files unsuccessful, display error to user.
};
PageMethods.Delete_files(CurrentObj.id, onDeleteSuccess, OnDeleteError);

尝试将“缺失的”(虽然它们应该是可选的)参数添加到您的 PageMethod 调用中,看看是否能解决问题。

编辑:

我找到了一个 closed bug at connect.microsoft.com about this problem.您是否尝试过仅在 IE7 中使用该页面?如果是这样,请在其他浏览器中测试它,看看它是否有效。如果确实如此,您唯一的选择可能是将 IE7 升级到更新版本或重新打开问题。

评论后编辑:

尝试将此代码放在您的 PageMethods.Delete_files 函数调用之前:

PageMethods.set_path("PageYouAreTransferringto.aspx");

我认为您正在调用的处理程序对调用哪个服务器端页面方法感到困惑,因为它似乎(对浏览器和 JavaScript)您在不同的页面上。

关于asp.net - Ajax 函数抛出 WebServiceFailedException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/995778/

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