【问题标题】:window.onload with querystring Not working on deployed MVC6 projectwindow.onload with querystring 不适用于已部署的 MVC6 项目
【发布时间】:2023-01-19 23:05:12
【问题描述】:

我一直在开发一个可以显示一些数据的网站。在表格中,每一行都有一个按钮可以打开一个新窗口,用户可以在其中查看与该行相关的数据。

我正在使用 MVC 6,我使用 Javascript 打开窗口并通过查询字符串传递“id”参数。

我的代码是:

父视图 .cshtml:

按钮:

wButtonClass = "btn btn-warning openW"; 
<a href="javascript:void(0);" class="@wButtonClass" data-id=@id.ToString()>@buttonText</a>

剧本:

<script>       
$(document).ready(function () {
            $(".openW").click(function (e) {    
                var x = $(this).data("id"); 
                var new_window = window.open('/MyView/HandleButton?id='+x, '_blank', 'left=200,top=150,width=1000,height=800,toolbar=1,resizable=0');
  });
});
</script>

控制器:

public IActionResult HandleButton(int id)
{
            
//Filling the List

return PartialView("DataView", myList);
}

因此,它在 VS 中工作得很好,但是当我将项目部署到 IIS 服务器(不在我的机器上)时,它会打开新窗口,并显示“404 - Not Found”,尽管新打开窗口中的 URL是正确的(值被传递)

可能是什么问题呢?

我一直在浏览几个论坛问题,但找不到答案。

【问题讨论】:

    标签: javascript asp.net-core-mvc iis-10


    【解决方案1】:

    如果路由不正确并且 URL 不正确,这可能是预期的。但是,由于您的 URL 是正确的,但您仍然看到 404 错误,这可能是服务器配置的问题。

    • 验证 IIS 服务器是否具有访问 您的应用程序的文件和文件夹。
    • 检查 IIS 服务器是否具有正确的 .NET Framework 版本 安装并且您的应用程序针对正确的版本。
    • 确保 IIS 服务器安装了正确的 MVC 版本 并且您的应用程序针对的是正确的版本。
    • 检查 IIS 服务器是否配置为处理对 .cshtml 文件。
    • 确保 MVC 路由在 应用程序的 web.config 文件。
    • 检查 IIS 服务器是否以 32 位或 64 位模式运行。 确保您的应用程序是为相同的模式构建的。
    • 确认服务器能够找到 DLL 和程序集 您的应用需求。
    • 检查事件日志以获取任何信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-09-28
      • 1970-01-01
      • 1970-01-01
      • 2017-09-20
      • 1970-01-01
      • 2015-09-26
      • 2021-06-26
      相关资源
      最近更新 更多