Javascript 从按钮调用客户端脚本,提交行为为false?

Javascript 从按钮调用客户端脚本,提交行为为false?,javascript,asp.net,Javascript,Asp.net,如何从服务器端按钮单击调用客户端脚本函数(提交行为设置为false) 您应该将按钮的OnClientClick属性设置为 OnClientClick="saveSuccess(); return false;" 这样可以将sumbit行为保持为false,并且还可以调用客户机脚本函数 此外,如果您想通过服务器端代码执行此操作,可以将其添加到页面加载中 Button4.Attributes["OnClientClick"] = "saveSuccess(); return false;"; 但

如何从服务器端按钮单击调用客户端脚本函数(提交行为设置为false)


您应该将按钮的OnClientClick属性设置为

OnClientClick="saveSuccess(); return false;"
这样可以将sumbit行为保持为false,并且还可以调用客户机脚本函数

此外,如果您想通过服务器端代码执行此操作,可以将其添加到页面加载中

Button4.Attributes["OnClientClick"] = "saveSuccess(); return false;";
但是,如果要在“保存”完成后调用脚本,并且使用异步作业和UpdatePanel,则应调用

ScriptManager.RegisterClientScriptBlock(typeof(Page), "savescript", "saveSuccess();", true); 

异步作业完成并保存数据后。

谢谢Nikos,我使用这种方法是因为我只想在服务器端发生特定事件(如数据库中保存的某些记录)后调用脚本。您的意思是只想在保存记录时调用“saveSuccess()”脚本吗?按钮(按钮4)是否需要调用保存记录的函数?如果是这样的话,那么按钮可能不会有提交行为为false。我说得对吗?嗨,按钮4将保存服务器端的记录。成功后,它将调用客户端脚本,该脚本将通过函数显示状态消息。没有办法解决这个问题吗?您必须使用按钮4提交请求,因此提交行为应设置为true。“保存”完成后,可以使用ClientScript.RegisterClientScriptBlock(this.GetType(),“success”,“saveSuccess()”;如果您使用和UpdatePanel,那么您应该使用ScriptManager来注册脚本。如果我对这种情况的理解是正确的,那么您可能应该在异步请求完成并重新启用按钮时调用ScriptManager.RegisterClientScriptBlock(typeof(Page),“scriptname”,“saveSuccess();”,true)?那对你有用吗?
ClientScript.RegisterStartupScript(this.GetType(), "success", "saveSuccess()", true);
ClientScript.RegisterStartupScript(this.GetType(), "success", "saveSuccess()", true);