html 按钮onclick=“window.location.href ...”未重定向至不同文件夹中的视图

uurity8g  于 2023-03-21  发布在  其他
关注(0)|答案(2)|浏览(107)
<form>
  <div>
    <input for="IPMaquina" type="text" placeholder="IP da Máquina">
    <button>Estado Máquina</button>
    <button type="button" onclick="window.location.href='JCash_SubPages/VNEconfig';" style="text-decoration: none; color: black;">Configuração</button>
  </div>

由于某种原因,onclick操作不会重定向到VNEconfig视图,并导致404错误

如果我把它移到同一个目录,它就能工作

然而,我不认为这是一个修复,因为将有更多的意见,我想组织它早。

eulz3vhy

eulz3vhy1#

NET核心控制器使用路由中间件来匹配传入请求的URL并将其Map到操作。
NET Core MVC模板生成类似于以下内容的常规路由代码:

app.MapControllerRoute(
     name: "default",
     pattern: "{controller=Home}/{action=Index}/{id?}");

路由模板“{控制器=主页}/{操作=索引}/{id?}":匹配URL路径,如/Products/Details/5通过标记路径来提取路由值{ controller = Products,action = Details,id = 5 }。
如果应用具有名为ProductsController的控制器和Details操作,则提取路由值会导致匹配:

public class ProductsController : Controller
{
    public IActionResult Details(int id)
    {
        return ControllerContext.MyDisplayRouteInfo(id);
    }
}

阅读Routing to controller actions in ASP.NET Core了解更多信息。
onclick操作不会重定向到VNEconfig视图
您可以在Home控制器中创建一个操作,转到VNEconfig操作,然后重定向JCash_SubPages/VNEconfig视图:

public IActionResult VNEconfig()
        {
            return View("JCash_SubPages/VNEconfig");
        }

修改您的代码如下:

<button type="button" onclick="window.location.href='/Home/VNEconfig';" style="text-decoration: none; color: black;">Configuração</button>
knpiaxh1

knpiaxh12#

您是否遗漏了文件的确切路径沿着扩展名?
可能需要将其指定为:

onclick="window.location.href='JCash_SubPages/VNEconfig.cshtml';"

相关问题