我知道,这听起来像一个奇怪的问题,我会试着更清楚地解释一下。我知道表单元素的action
属性中包含的文件是处理表单中输入数据的文件的位置。
现在,在action
属性中包含HTML文件并让数据由另一个文件处理是否有意义?这可能吗?
答案 0 :(得分:1)
是的,这是可能的。例如,您可以在表单的action属性中指向要指向的文件中的另一个文件。但是,由于您希望将其作为HTML文件,因此您将陷入困境(您无法将HTML文件相互包含在内)。但是......如果你想处理表单,你可能想要执行一些服务器端代码,就像PHP或ASP一样。比你有选择。 1.指向PHP文件而不是HTML文件或使用一些url重写(通过一些.htacess文件或其他东西)将html文件重定向到服务器端脚本文件。
答案 1 :(得分:1)
action
属性是使用提供的表单数据发送HTTP POST请求的位置。
然后由action
网址页面来处理这些数据,并根据需要做任何事情。
如果您希望处理一个文件上的数据并重定向到另一个文件,您可以发布到将处理数据的HTML,然后在该页面上自动重定向到第3页。
例如:
<强> Page1.html:强>
<form action="Page2.html">
<强> Page2.html:强>
处理数据然后以某种方式自动重定向:
<script type="text/javascript">
window.location = "Page3.html";
</script>
<强> Page3.html:强>
最后到达第3页。
对于用户来说,此过程似乎是无缝的,看起来好像是从Page1.html
直接转到Page3.html
,而您的数据处理是在Page2.html
处理的。
答案 2 :(得分:1)
单独使用HTML文件无法处理HTTP请求的所有部分。 HTML无法解析标题和正文中的数据。而且没有其他地方可以传递数据。所以HTML无法处理传递的数据。
但首先,确保那些带有.html
扩展名的链接真的是html文件。不是.html
扩展名中隐藏的服务器端脚本!
注意。 Javascript可以解析部分GET参数!见this answer。它显示了Javascript如何解析GET数据。因此,您可以在表单上使用GET方法创建应用程序,并使用普通JS来解析它。
答案 3 :(得分:1)
只是我在action属性中看到了几个带有html文件的表单,所以我想知道数据是否可以在其他地方处理。
它可能只是名称的静态HTML文件。 URL不是它背后是什么类型文件的可靠指示器。表单目标可能是一个服务器端脚本,“隐藏”在处理数据的.html扩展名后面。
答案 4 :(得分:0)
如果您想将数据发送到action
属性中调用的文件以外的其他位置,我想您可能会使用JavaScript执行此操作。既然如此,您也可以使用JavaScript将用户发送到新的HTML页面。
这个问题的其他答案都是有效的并且有效,但整个想法本身有点无意义。所以我的答案是:
是强>
没用。