button的onclick跳转不同文件夹View失败,出现404错误求助
问题解决:onclick跳转404的路径问题
你遇到的404问题核心是相对路径的解析逻辑:你写的JCash_SubPages/VNEconfig是相对当前页面的URL路径,不是服务器上的文件系统路径。比如当前页面URL是http://你的域名/子目录/当前页面.html,浏览器会把跳转路径解析成http://你的域名/子目录/JCash_SubPages/VNEconfig,但实际你的VNEconfig视图是在根目录下的JCash_SubPages里,所以路径不匹配导致404。
给你几个可行的解决方法:
- 改用根相对路径:在路径开头加
/,强制从网站根目录开始定位,不管当前页面在哪个子目录都能正确找到目标视图。修改后的按钮代码:
<button type="button" onclick="window.location.href='/JCash_SubPages/VNEconfig';" style="text-decoration: none; color: black;">Configuração</button>
核对服务器路由/文件位置:确认服务器端已经正确配置了
JCash_SubPages/VNEconfig的访问规则,比如静态文件服务器要确保JCash_SubPages目录下的VNEconfig入口文件(比如index.html)存在,或者后端框架的路由表中有对应这个路径的映射。统一管理基础路径(可选):如果后续要加更多子页面,建议在页面全局定义基础路径变量,避免硬编码重复路径:
<script> // 在页面头部定义基础路径 const subPagesBase = '/JCash_SubPages/'; </script>
然后按钮里改成:
<button type="button" onclick="window.location.href=subPagesBase+'VNEconfig';" style="text-decoration: none; color: black;">Configuração</button>
后续新增页面只需要修改subPagesBase或者拼接对应的视图名即可,维护更方便。
内容的提问来源于stack exchange,提问作者Guilherme Silvestre
相关产品推荐
相关产品推荐

