gpt4 book ai didi

javascript - ASP.net OnClientClick 有一个异步调用 - 如何仅在异步调用完成并成功时才继续进行服务器端 OnClick?

转载 作者:行者123 更新时间:2023-11-29 17:56:11 25 4
gpt4 key购买 nike

我有

<asp:Button ID="Submit_BT" runat="server" OnClientClick="return clientClick();" OnClick="Submit_BT_Click" />

然后在 JS 中:

function clientClick(){
// using jQuery
$.get(..., function(result){
// Perform some processing on result
// Proceed with the server-side postback
},
function(error){
// Don't proceed with server-side postback
});

return true; // ?---
}

我希望 $.get 在回发之前成功完成,但我认为回发永远不会发生,或者总是会发生。我可以简单地说 return $.get(...);如何做到这一点?

This question类似,解决方法是设置async: false,部分回答了我的问题。当调用完成时,它可能是成功的,也可能是错误的。只有当调用成功时,我才想继续进行服务器端点击。我如何从 $.get() 的处理程序中“返回 true 或 false”?

最佳答案

您始终可以在 JS 函数中返回 false 以确保它不会在点击时回发。

并在成功的异步回调中进行手动回发:

$.get(..., function(result){

// Perform some processing on result

__doPostBack('Submit_BT', '')

}

关于javascript - ASP.net OnClientClick 有一个异步调用 - 如何仅在异步调用完成并成功时才继续进行服务器端 OnClick?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38877523/

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