MVC 4 - onClick用另一个替换.js文件

时间:2016-02-24 08:46:30

标签: jquery asp.net-mvc asp.net-mvc-4

NET。

我在.NET和仪表板中开发原型我有 8 不同的类别。每个catogory都有唯一的.js文件。

例如:如果我点击银行类别链接(来自~/Views/Home/IndustryDashboard视图),我的~/Shared/_Layout.cshtml(此文件包含所有.js个文件)文件应将default.js替换为banking.js文件

的jQuery

jQuery(document).ready(function($){
    jQuery('#gt-industry-1').on('click', function () {
        loadJS = function (src) {
            var oldFile = $("<script type='text/javascript' src='~/Scripts/default.js'>");
            var newFile = $("<script type='text/javascript' src='~/Scripts/banking.js'>");
            oldFile.replaceWith(newFile);
        };
        loadJS("~/Scripts/banking.js");
    });
});

参考图片:

enter image description here

enter image description here

请帮忙吗?

2 个答案:

答案 0 :(得分:1)

最好在视图中处理它。 将公共文件放在_Layout.cshtml文件中。 并且应该在View本身中添加基于页面的js文件。

答案 1 :(得分:1)

呀!

我让它的工作方式如下:)

更新了HomeController.cs中的代码,如下所示

public ActionResult Dashboard() {
  Session["tempval"] = at.ToString();
  ViewBag.str = at;
  return View();
}

_Layout.cshtml文件,代码如下......

@if (Convert.ToInt32(Session["tempval"]) == 1) {
  <script src="@Url.Content("~/Scripts/industry_init-b2b.js")"></script>
}

else if (Convert.ToInt32(Session["tempval"]) == 2) {
  <script src="@Url.Content("~/Scripts/industry_init-banking.js")"></script>
}

else {
  <script src="@Url.Content("~/Scripts/init-default.js")"></script>
}