我正在尝试使用以下命令从网址获取当前文件名:
$currentFile = window.location.pathname.split("/").pop();
如果完整路径类似于:
,则可以正常工作http://www.yoursite.com/folder/index.php
它将返回index.php,index.cfm,index.html等。
但当网址为http://www.yoursite.com/folder/
时我无法检索当前文件名,这可能通过js或jquery吗?
答案 0 :(得分:5)
如果您只有URL中的路径,那么您无法从中获取文件名 - 不使用jQuery,不使用任何其他客户端方法。这是因为只有发送此文件的服务器才知道该文件是什么。具体来说,在Web服务器配置中,有一个指令,指示仅指定目录名时要搜索的文件名。例如,在apache中,这可以是
DirectoryIndex index.html index.php home.htm
这告诉服务器,对于只有目录名的请求,服务器将尝试从该目录提供文件index.html
;如果它不存在,那么index.php
;如果那也不存在那么home.htm
。如果那个也不存在,那么行为取决于其他配置选项。其他Web服务器软件具有类似的配置选项。
因此,当您向服务器发送http://www.yoursite.com/folder/之类的请求时,只有该服务器才会知道实际使用的文件。