我在action属性中看到过文件名(带文件扩展名)或URL,但从未见过像下面这样的代码。
<form action="your-shop" name="shop_name_form" id="shop_name_form" method="post" onsubmit="return check_shopname(this);">
</form>
此处action属性包含的可以是文件名,但不能是文件扩展名。当我按下提交按钮时,它会做什么?请详细说明
这是一个相对URL,将根据当前URL进行解析。例如,如果页面位于http://example.com/current/path/foo
,则从将提交给http://example.com/current/path/your-shop
。
文件扩展名在URL中没有意义,路径如何处理取决于服务器实现
首先调用Javascript函数check_shopname();
。如果它返回false,提交将被取消,所以可能没有返回true的情况,因为Admin处理客户端上的所有事情!
第二种可能性是,网站的url被mod_rewrite修改,您被重定向到另一个文件,例如,通过添加。html或。php扩展名。
如果您将带您到以下链接进行表单提交。
www.yourwebsite.com/your-shop
。你的商店将被附加到网站的URL。因为没有包含文件夹或其他目录。正如Felix在评论中已经提到的,像.html
这样的文件扩展名在action
的上下文中没有任何意义。