在我的 asp.net 应用程序(服务器端的 vb)中 - 我在我的 javascript 中使用 PageMethods 来调用一些服务器端函数。特别是一个电话无法正常工作。pagemethods 调用正在调用服务器端函数(正如我可以通过使用跟踪点看到的那样) - 但是在函数运行后没有命中成功或失败函数。我知道服务器端的函数一直成功运行到最后,因为函数的最后一位是 sql 表更新——它成功发生了。谁能告诉我为什么不调用成功或失败函数?下面列出的是对服务器端的调用以及成功和失败函数,以及正在调用的服务器端函数。谢谢您的帮助。
调用服务器端
PageMethods.UpdatePassword(document.getElementById('txtNewPass').value, updatePasswordCallBack, updatePasswordFail);
成功/失败函数
function updatePasswordCallBack(c) {
alert('updatePasswordCallBack hit');
}
function updatePasswordFail(c) {
alert('updatePasswordFail hit');
}
服务器端函数(被跟踪点调用)
<System.Web.Services.WebMethod()> _
Public Shared Function UpdatePassword(ByVal userText)
'Open Connection to DB here, removed for stackoverflow post
'convert userText to password hash removed for stack overflow
'now must update the password
myCmd.CommandType = CommandType.Text
myCmd.CommandText = "UPDATE P2_RESOURCE_PROFILE SET RES_PASSWORD = '" & userTextHash & "' WHERE RES_UID = " & UserID
myCmd.ExecuteScalar()
objConn.Close()
Return true
End Function
所以executeScalar被命中并改变了DB值,但完成后没有返回或成功函数被命中。再次感谢你的帮助。