【发布时间】:2021-10-05 14:14:25
【问题描述】:
我有一个 wsgi python-2 网络服务器,我希望在按下按钮后,在服务器端执行一些代码,浏览器页面会关闭。
目前,帖子将浏览器选项卡重定向到主机名/foo 页面,我不想这样做,而只是接收帖子并在客户端关闭页面。
此页面是旧版页面,涉及的代码越少越好(它已经从头开始重新设计,但出于兼容性问题我必须使其尽可能简单)。
所以例如执行流程是这样的:
user clicks on "foo" button -> a post arrives to the web server -> the server does something on its side
-> page closes
据我所知,可以使用window.close(); 命令关闭 html 页面,但我不知道如何在当前页面中插入此命令。
我已尝试创建绑定到 onclick 和 onsubmit 侦听器的 javascript 函数,但由于始终打印 /foo 页面,我无法解决问题。
现有的代码是这样的:
<form method="post" action="foo">
<input type="submit" value="Submit and foo!"/>
</form>
foo 函数根据 wsgi 编程模型调用 python-webserver 中的 foo 函数。
我想做的是在按下Submit和Foo表单提交按钮后自动关闭页面
【问题讨论】:
-
所以你想发送请求然后立即关闭浏览器或发送请求,等待应答然后关闭浏览器?
-
在这种情况下没有区别,因为客户端发送的 POST 包含一些触发服务器端代码执行的数据,其结果保留在服务器端(客户端可以在 POST 正确后立即关闭发送)
-
请注意,
<input>标签不使用也不需要结束斜杠,并且在任何 HTML 规范中都没有。