如何在Sharepoint中调试JavaScript? - javascript

我刚开始在一个新的地方工作,担任软件开发人员,他们让我进入了一个需要改进的项目,这是使我入门的一种方法。

这是一个SharePoint 2010项目,由C#和ASP组成。我在开发共享点方面经验很少,因此,如果可能,我想寻求一些帮助。基本上,他们的页面上有很多活动,每个活动都应该试图节省公司资金。

现在,当您按下“编辑项目”时,JavaScript将执行并设置呈现给您的某些表的样式。由于该项目是匆忙完成的,因此没有文档,也没有硬编码的值。我首先要尝试的是更改显示的年份数字,因为这些数字是经过硬编码的。因此,我要这样做:

var quarters = {
    "Q3": {
        title: "Q3",
        name: "Q3 (MAR-MAY)"
    },
    "Q4": {
        title: "Q4",
        name: "Q4 (JUN-AUG)"
    },
    "2015-16": {
        title: "2015-16",
        name: "Budget year 2015/2016"
    },
    "2016-17": {
        title: "2016-17",
        name: "Budget year 2016/2017"
    }
};

对此:

function getCurrentYear() {
    var year = new Date().getFullYear();
    return year;
}

var quarters = {
    "Q3": {
        title: "Q3",
        name: "Q3 (MAR-MAY)"
    },
    "Q4": {
        title: "Q4",
        name: "Q4 (JUN-AUG)"
    },
    "CurrentYear-NextYear": {
        title: getCurrentYear + "-" + (getCurrentYear()+1).toString().substr(2,2),
        name: "Budget year" + getCurrentYear() + "/" + getCurrentYear()+1
    },
    "NextYear-YearAfterNextYear": {
        title: (getCurrentYear() + 1) + "-" + (getCurrentYear() + 2).toString().substr(2, 2),
        name: "Budget year " + (getCurrentYear() + 1) + "-" + (getCurrentYear() + 2)
    }
};

但是,当我部署共享点站点并使用“编辑项目”部分时,JaveScript应该不会发生任何事情。我尝试调试,但是调试器实际上从未输入我尝试使用的功能,这使我相信该网站从不使用JavaScript。

我的问题是:我将在哪里检查脚本的可能用途?

我在整个解决方案中进行了搜索,没有找到JavaScript文件,但是在生产环境中它工作正常,修订历史记录没有发现任何会破坏JavaScript使用的情况。

参考方案

整个解决方案中都没有引用JavaScript文件

既然您提到这是匆忙完成的,也许在页面部署后在aspx中添加了脚本引用? (这是一种非常肮脏的处理方式,但不是我在共享环境中看到的最糟糕的方式)

要检查以下内容:在服务器上,在部署位置查找aspx(通常为C:\Program Files\Common Files\microsoft shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\<ProjectName>\),然后查看该应用程序页面中是否引用了脚本文件。

也可能是页面上的另一个脚本文件已在正在加载目标脚本文件的配置单元中被修改:我会检查配置单元中的脚本文件中是否有SP.SOD.executeexecuteFuncEnsureScriptFunc之类的调用,或者只是SP.SOD。(除了明显寻找文件名之外)

也:可以通过其他解决方案(如果有)将脚本添加为委托控件,因此检查是否可以获取源代码可能是另一回事。

.NET C#Webbrowser填充输入,不带ID或类名 - javascript

我需要在网络浏览器中填写一个输入,但这不起作用。我认为必须使用name属性来完成,但是怎么做呢?foreach (HtmlElement login in webBrowser1.Document.GetElementsByTagName("input")) { if (login.GetAttribute("name"…

Javascript-从当前网址中删除查询字符串 - javascript

单击提交按钮后,我需要从网址中删除查询字符串值。我可以用jQuery做到这一点吗?当前网址:siteUrl/page.php?key=value 页面提交后:siteUrl/page.php 实际上,我已经从另一个带有查询字符串的页面着陆到当前页面。我需要在页面首次加载时查询字符串值以预填充一些详细信息。但是,一旦我提交了表格,我就需要删除查询字符串值。我已…

获取JavaScript值到C#字符串 - javascript

                        是否可以在C#中执行类似的操作?该值为“ 10/05/2014”string jsValue = javascript("$('#EstimatedStartDate').val()"); 参考方案 您能否更详细地阐明您要做什么。看来您正在尝试从javascript(客户…

ASP.NET-如何更改JSON序列化的方式? - javascript

我正在使用ASP.NET通过以下查询返回Json文件:public ActionResult getTransactionTotals(int itemID) { DBEntities db = new DBEntities(); var query = from trans in db.Transactions // Linq query removed …

Mongo汇总 - javascript

我的收藏中有以下文件{ "_id": ObjectId("54490b8104f7142f22ecc97f"), "title": "Sample1", "slug": "samplenews", "cat": …