如何确保表单的相对URL有效?

时间:2015-04-17 16:14:08

标签: html html5 forms

这是我的网页

www.domain.com/product/1

要更新产品,我应该提交到此网址

www.domain.com/product/1/update

在产品页面中,我有这些表单来提交数据

<form method="post" action="update">
    <input type="submit" />
</form>

<form method="post" action="./update">
    <input type="submit" />
</form>

两种表单都不起作用,因为它会提交到

www.domain.com/product/update

它们仅在URL为

时有效
www.domain.com/product/1/

如果我在操作中硬编码产品ID

<form method="post" action="1/update">
    <input type="submit" />
</form>

然后www.domain.com/product/1/无效,因为它会提交到www.domain.com/product/1/1/update

确保表单可以提交到正确的网址,该操作应该有什么价值?

如果可能,我不想在表单操作中呈现绝对路径或产品ID。

3 个答案:

答案 0 :(得分:1)

为确保此功能适用于所有情况,您需要使用产品ID,如下所示:/product/1/update

另一个选择是在服务器端进行一些调整,以确保目录URL始终具有尾部斜杠。

答案 1 :(得分:0)

你无法实现所要求的目标。

您必须指定绝对路径或产品ID。

您可以以编程方式生成产品ID。

答案 2 :(得分:0)

您遇到了问题,因为操作路径product/1被视为文件而不是目录,如果1domain.com/product/1/之后有斜杠,那么您就不会这样做了。有任何问题。像@ sumitb.mdi建议一个基本元标记将起作用。

您可能正在使用框架,您可能可以使用URL构建器功能来命名路由&#39;什么的。