在我的MVC5项目中,我使用了Jquery,并使用了Controller Actions,使用了相对路径。这是一个示例:

 $("#divTree").jstree({
        'core': {
            'data': {
                "url": "/Customer/GetList",
                "dataType": "json"
            },
            "check_callback": true
        },
        "plugins": ["contextmenu", "dnd", "json_data"]
    });


我也在jquery.ajax()方法中使用相对路径。所有相对路径都在Visual Studio中工作。但是,当我在IIS中发布并将其托管时,相对路径不起作用。

在我的asp.net Web表单项目中,我正在使用ReloveUrl()或〜。

我应该如何在MVC 5项目中处理它?

最佳答案

您不应该考虑对MVC应用程序中的URL进行硬编码,而应使用提供的帮助器。如果脚本在视图中,则可以使用@ Url.Action()生成URL。如果没有,您仍然可以通过某种方式将其作为参数传递给JS。

$("#divTree").jstree({
    'core': {
        'data': {
            "url": '@Url.Action("Customer", "GetList")',
            "dataType": "json"
        },
        "check_callback": true
    },
    "plugins": ["contextmenu", "dnd", "json_data"]
});

关于jquery - 发布MVC 5网站时相对路径不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30869465/

10-11 06:03