我想在用户选择中更改我的网页的主题 我正在使用MVC3。 我的想法是在Content文件夹中包含各种样式表,并让_layout.cshtml文件决定在用户选择时调用哪个css文件 目前我所能做的就是包含一个反映在所有页面上的单个标签 希望视图相同,但样式表应该在选择时改变。如何在mvc3中动态更改主题
我想这里面的代码_Layout.cshtml:
<script type="text/javascript">
function loadjscssfile(filename) {
var fileref = document.createElement("link")
fileref.setAttribute("rel", "stylesheet")
fileref.setAttribute("type", "text/css")
fileref.setAttribute("href", filename)
}
if (typeof fileref != "undefined")
document.getElementsByTagName("head")[0].appendChild(fileref)
体内标签:
<select>
<option onclick="loadjscssfile("@Url.Content("~/Content/Site1.css")")">Theme1</option>
<option onclick="loadjscssfile("@Url.Content("~/Content/Site2.css")")">Theme2</option>
</select>
但这也不起作用:( 请帮助我,我是新来的MVC3。 ..
嗨,我已经通过这个链接,也下载了整个zip文件,但一旦我运行它给了我错误:ViewModel不存在于当前的情况下,我不知道ViewModels – EqEdi 2012-03-02 06:35:54
如果你需要更强大的他妈的你也可以尝试我的CavemanTools Mvc工具包(nuget它)。看看如何在这里使用主题https://bitbucket.org/sapiensworks/caveman-tools/wiki/Themes – MikeSW 2012-03-02 06:47:35
已更新的答案。编辑后编译并在我的机器上使用MVC3 – Iridio 2012-03-02 07:09:43