使用WSPBuilder将JavaScript,CSS和其他内容添加到WebPart

pmm*_*aga 11 javascript css c# sharepoint wspbuilder

所以,我正在尝试做我认为是一项简单的任务...但我没有得到任何地方......我想要的是获取我的WebPart加载的一些.js和.css文件.我正在使用VS2008 + WSPBuilder.我已经搜索了很多关于这一点,但我找不到一个体面的答案.我想知道的是:

  • 在目录结构中我应该放置那些文件?(例如12/TEMPLATE/OTHER?80/wpresources/assembly_name?)

  • 我怎样才能获得这些文件?(使用相对路径?通过某种方法获取完整路径?)

  • 最后,我如何将这些文件添加到页面中<head>

在此先感谢..我在这些问题中失去了所有的早晨,我正在考虑改变职业生涯!;)

pmm*_*aga 9

好吧,经过两次卷烟和更有效的谷歌搜索我找到了解决方案..希望这有助于像我一样的人遇到同样的麻烦!

  • 这些额外文件的正确位置在 12/TEMPLATE/LAYOUTS/1033/yourapp/

  • 如果他们在这个地方,那么这些文件的路径是 /_layouts/1033/yourapp/yourjs.js

  • 如果要将JavaScript文件添加到页面的头部,请将此代码放在CreateChildControls()方法中:

    string scriptPath = "/_layouts/1033/yourapp/yourjs.js";
    if(!this.Page.ClientScript.IsClientScriptBlockRegistered(scriptPath))
    this.Page.ClientScript.RegisterClientScriptBlock(this.GetType(), scriptPath,
    "<script language=\"javascript\" src=\"" + scriptPath + "\">");
    Run Code Online (Sandbox Code Playgroud)
  • 如果要将CSS文件添加到页面的头部,请将此代码放在CreateChildControls()方法中:

    CssLink cssLink = new CssLink();
    cssLink.DefaultUrl = "/_layouts/1033/yourapp/yourcss.css";
    this.Page.Header.Controls.Add(cssLink);
    Run Code Online (Sandbox Code Playgroud)

好吧,希望你发现这有用!