javascript - 在服务器端或使用 javascript 包含和排除文件

标签 javascript asp.net-mvc

是否有一种方法可以在项目中包含和排除文件,而不是尝试在 JavaScript 中执行此操作?

我尝试使用 javascript 来完成此操作,但传递绝对路径不起作用。

如何删除此文件以使路径在所有环境中都是“动态”的?

 public JsonResult MapPath()
    {
        var path = Server.MapPath("~/Content/Site.css");
        return Json(new
        {
            Path = path

        });
    }

Javascript

 renderLoginPage = function (data) {
    path = data.Path;
    removeCSS(path);

 function removeCSS(href) {
    var sSheet = $('link[href="' + href + '"]');
    if (sSheet.length) {
        $('link[href="' + href + '"]')[0].disabled = true;
    }

}

最佳答案

如果我理解您的需求,那么您正在寻找一种激活/停用项目中特定 CSS 的方法。我假设在确定的情况下,可能源自用户交互。

这不是一个好的选择。请记住,即使您设法从 DOM 添加或删除指向 css 样式表或 javascript 文件的链接,页面也应该重新加载以允许提交更改。

通过 CSS 类激活或停用样式始终是更好的选择。为此,您只需定义与“激活”和“停用”类关联的不同样式。

当需要更改样式的情况发生时,您只需要更改受影响的元素类属性,通过 javascript 很容易做到,如果您使用 jQuery 并且可以使用 .addClass() .removeClass( )方法。

还要记住,页面上的任何元素都可以有多个类名称,因此您可以每次微调哪些样式处于事件状态,而哪些样式不仅仅是更改类属性上的装饰。

关于javascript - 在服务器端或使用 javascript 包含和排除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34219522/

相关文章:

javascript - Chrome 扩展程序 : AJAX returns php as comment line

javascript - Jasmine:测试 toHaveBeenCalledWith(params) 其中 params 是一个对象

javascript - 更改 javascript 切换脚本以突出显示事件状态

.net - ASP.NET MVC Html.ActionLink 结果 URL - 编码方式

javascript - 在 AngularJS 中切换编辑状态并将项目的 ng-click 更改为另一个功能

javascript - Meteor Twilio MRT 包

c# - 问号在 MVC 中意味着什么?

c# - 如何从另一个应用程序呈现部分 View ?

c# - ASP.NET WebAPI Selfhost 没有解析到 Controller 的路由

javascript - 如何使用 ASP.NET MVC 3/jQuery 实现即时搜索框?