javascript - 使用基于 razor 方法的 URL

标签 javascript jquery asp.net-mvc razor

我想重定向到特定页面。 为此,我在 MVC 项目中使用一些 Javascript 函数作为::

function rootUrl(url) {                                                    
    var _rootUrl = '@Url.Content("~")';
    var x = url;
    if (url.indexOf(_rootUrl) != 0) {
        x = _rootUrl + "/" + url;
        x = x.replace(/\/\//g, "/").replace(/\/\//g, "/");
    }
    return x;
};

用作::

var url = rootUrl("Home/Company/") + $(this).val();
window.location.href = url;

但是我在浏览器中得到的 URL 是错误的:

http://localhost:60294/Home/Company/@Url.Content(%22~%22)/Home/Company/7

最佳答案

为什么不直接使用 Url.Action() 来为您提供相对于根目录的 url,而不是创建一个 javascript 乱七八糟的函数:

var url = '@Url.Action("Company","Home")' + $(this).val();

这里,Home是Controller的名字,Company是它的 Action

关于javascript - 使用基于 razor 方法的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26097905/

相关文章:

javascript - 放置网页部分的灯箱

javascript - 按下任意键时发出警报

javascript - 使用 jQuery append() 添加 html 元素后页面源出现问题

jquery - jqGrid - 调整最后一列的大小

c# - 加载 View 后是否可以在 Controller 中调用操作?

c# - 如何使用 JavaScript 在 MVC3 中的 View 之间保留数据?

javascript - PHP - 从完全加载的外部页面加载 HTML

javascript - 从 NESTED 对象数组中删除重复项

javascript - JQuery DatePicker 在第一个实例后不工作

c# - 存储更新、插入或删除语句影响了意外的 .自加载实体后修改或删除的实体