通过JavaScript确认结果控制流背后的代码

通过JavaScript确认结果控制流背后的代码,javascript,c#,jquery,asp.net,Javascript,C#,Jquery,Asp.net,我不确定这是否可能,但我尝试: 我有一个ASP.NET表单页面。有一个文件上传控件。上传文件时,会将文件保存到服务器并检查它是否满足给定的条件(实际上,上传文件后会有更多的处理,但我尽量保持简单)。如果不符合,则应显示JS确认,询问用户“文件不符合给定条件。是否仍要保存文件?”。如果用户选择“是”,则保留该文件,否则将删除该文件 我这样称呼JS确认: Response.Write("<script>confirm('The file does not satisfy given cr

我不确定这是否可能,但我尝试:

我有一个ASP.NET表单页面。有一个文件上传控件。上传文件时,会将文件保存到服务器并检查它是否满足给定的条件(实际上,上传文件后会有更多的处理,但我尽量保持简单)。如果不符合,则应显示JS确认,询问用户“文件不符合给定条件。是否仍要保存文件?”。如果用户选择“是”,则保留该文件,否则将删除该文件

我这样称呼JS确认:

Response.Write("<script>confirm('The file does not satisfy given criteria. Do you wish to save the file anyway?');</script>");
Response.Write(“确认('文件不满足给定条件。是否仍要保存文件?);”;
但是,这不会立即触发确认,而是在整个处理完成并调用回发后触发。因此,确认的目的就丢失了,因为回发后文件路径丢失,并且没有要保留/删除的文件

现在,我知道我在这里混合了客户端和服务器脚本。但是,有没有办法实现我想要的?我考虑过一个选择: 上传并保存文件,路径保存到隐藏字段->发生回发->显示确认提示->结果值存储在隐藏字段->另一次回发->加载服务器根据隐藏字段中的值保留/删除文件


然而,这似乎太复杂了。有更复杂的方法吗?

文件不满足给定的条件
,那么在哪里进行此条件检查?在上传功能的服务器端代码上?是的,整个文件处理是一个C#方法链。您是否对页面使用了
UpdatePanel
。。。我来看看。你可以使用AJAX
WebMethods
和JavaScript触发器。请注意,这些webmethods是静态的,您将无法访问任何表单元素。如果所有上传功能都是独立的,则将其写入webmethod中,如果不符合条件,则抛出
确认。