有没有办法忽略表单响应?

时间:2010-07-19 16:46:04

标签: html forms

有没有办法通过类型或操作网址指定表单才能打开响应?换句话说,我想将信息发送到服务器,但不在客户端上做任何事情。我知道我可以使用ajax并忽略响应,但我想避免在可能的情况下将所有j添加到我的代码中。

编辑:我不是故意将自己限制在html表单中。在我看来,服务器端解决方案也是可以接受的。

4 个答案:

答案 0 :(得分:8)

在表单提交后让服务器返回HTTP 204(无内容)。根据{{​​3}}:

  

10.2.5 204无内容

     

服务器已完成请求   但不需要返回   entity-body,可能想要返回   更新的元信息。响应   可能包括新的或更新的   形式的元信息   entity-headers,如果存在的话   应该与之相关联   要求的变体。

     

如果客户端是用户代理,那么   不应该改变它的文档视图   从导致请求的那个   被发送。这种反应主要是   旨在允许对行动的输入   发生而不会导致改变   用户代理的活动文档视图,   虽然有任何新的或更新的   元信息应该适用于   当前在用户中的文档   代理人的积极观点。

     

204响应不得包含a   消息体,因而永远   由第一个空行终止   在标题字段之后。

这听起来就像你想要的那样。

答案 1 :(得分:6)

试试这个:

<iframe id="invisible" ...

<form target="invisible" ...

答案 2 :(得分:2)

我发现也应该指定name属性(我在IE11中测试过)。 E.g:

<iframe id="invisible" name="invisible" style="display:none;"></iframe>
<form method="post" target="invisible" action="url.com/whatever?x=y" id="fileForm" enctype="multipart/form-data">

答案 3 :(得分:0)

使用ASP.NET,您可以拥有一个处理表单帖子的页面,只需立即结束响应,这将使用户处于同一页面。

然而,根本没有对用户的回应不是最好的用户体验.....