//#region 界面交互代码
var issuesUtils = issuesUtils || {};
(function () {
/**
* 点击问题提处理方案按钮事件
*/
issuesUtils.issuuesSchemeBtn = function () {
var item_id = commonUtils.getUrlParamValue('ID');
issuesList.getIssuesItem(item_id, function (data) {
console.log(JSON.stringify(data));
var issuesSchemeUrl = '/sites/pwa/Lists/List/AllItems.aspx?IssuesId=' + data.ID;
//location.href = issuesSchemeUrl;
}); issuesList.deleteItem(item_id, function (data) {
alert("删除成功");
});
};
})();
//#endregion //#region 问题list
/**
* issues list
*/
var issuesList = issuesList || {};
(function () { var projectSiteName = function () {
return location.pathname.replace('/', '').split('/')[2];
}; /**
* 获取列表项目
* @param {*} itemId
* @param {*} fun
*/
issuesList.getIssuesItem = function (itemId, fun) {
var server_url = '/sites/pwa/' + projectSiteName() + '/_api/Lists/IssuesList/items(' + itemId + ')';
commonUtils.executeRequest({
type: commonUtils.ExecuteRequestType.READ,
url: server_url,
callBack: function (data) {
if (fun) {
fun(data);
}
}
});
}; issuesList.addIssuesItem = function (callBack) {
var issuesData = {
__metadata: { type: 'SP.Data.IssuesListItem' },
Title: '我的测试问题1212'
};
var server_url = '/sites/pwa/' + projectSiteName() + '/_api/Lists/IssuesList/items';
commonUtils.executeRequest({
type: commonUtils.ExecuteRequestType.CREATE,
data: issuesData,
url: server_url,
callBack: function (data) { }
});
}; issuesList.updateItem = function (callBack) {
var server_url = '/sites/pwa/' + projectSiteName() + '/_api/Lists/IssuesList/items(6)';
var issuesData = {
__metadata: { type: 'SP.Data.IssuesListItem' },
Title: '修改标题111111111'
};
commonUtils.executeRequest({
type: commonUtils.ExecuteRequestType.UPDATE,
data: issuesData,
url: server_url,
callBack: function (data) { }
});
}; /**
* 删除问题
* @param {*ID} itemId
* @param {*} callBack
*/
issuesList.deleteItem = function (itemId, callBack) {
var server_url = '/sites/pwa/' + projectSiteName() + '/_api/Lists/IssuesList/items(' + itemId + ')';
commonUtils.executeRequest({
type: commonUtils.ExecuteRequestType.DELETE,
url: server_url,
callBack: callBack
});
}
})();
//#endregion //#region 问题处理方案list
var issuesSchemeList = issuesSchemeList || {};
(function () { })();
//#endregion //#region 常用工具类
/**
* 常用工具类
*/
var commonUtils = commonUtils || {};
(function () {
/**
* 根据参数名称获取URL参数值
* @param {参数名称} paramName
*/
commonUtils.getUrlParamValue = function (paramName) {
var reg = new RegExp("(^|&)" + paramName + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return undefined;
}; /**
*
* @param {type:commonUtils.ExecuteRequestType,data:提交的数据对象,url:rest api url 地址,callBack:回调函数function(data){}} option
*/
commonUtils.executeRequest = function (option) {
var ajax_type = undefined;
var ajax_header = undefined;
var ajax_data = undefined;
switch (option.type) {
case commonUtils.ExecuteRequestType.CREATE:
//添加数据
ajax_type = 'POST';
ajax_header = {
"Accept": "application/json; odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
};
break;
case commonUtils.ExecuteRequestType.UPDATE:
//修改数据
ajax_type = 'POST';
ajax_header = {
"Accept": "application/json; odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
"IF-MATCH": "*",
"X-HTTP-Method": "MERGE"
};
break;
case commonUtils.ExecuteRequestType.READ:
//读取数据
ajax_type = 'GET';
ajax_header = {
"Accept": "application/json; odata=verbose",
};
break;
case commonUtils.ExecuteRequestType.DELETE:
//删除数据
ajax_type = 'POST';
ajax_header = {
//"Accept": "application/json; odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
"IF-MATCH": "*",
"X-HTTP-Method": "DELETE"
};
break;
}
if (option.data) {
ajax_data = JSON.stringify(option.data);
}
if (ajax_header && ajax_header) {
$.ajax({
url: option.url,
type: ajax_type,
//contentType: "application/json;odata=verbose",
data: ajax_data,
headers: ajax_header,
complete: function (xhr, textStatus) {
if (xhr.status == 200) {
var jsondata = xhr.responseText ? JSON.parse(xhr.responseText).d : {};
if (option.callBack) {
option.callBack(jsondata);
}
} else {
console.error("出现错误,错误代码为" + xhr.status);
}
},
error: function (data, errorCode, errorMessage) {
console.error("出现错误:" + errorMessage);
}
});
} else {
console.error("调用commonUtils.executeRequest方法参数不合法");
}
} /**
* 调用rest api类型,增删改查
*/
commonUtils.ExecuteRequestType = {
CREATE: 1,
UPDATE: 2,
READ: 3,
DELETE: 4
};
})();
//#endregion

SharePoint Project Server List 列表CURD操作使用rest api接口的更多相关文章

  1. Sharepoint/Project Server 看不到“安全性”菜单以及子菜单

    在Sharepoint/Project Server 构建后,左侧看不到看不到“服务器设置”菜单,在设置菜单后左侧出现“服务器设置”菜单,但是依然在右侧看不到“安全性”菜单以及子菜单. (这个图是借的 ...

  2. 创建包含CRUD操作的Web API接口2:实现Get方法

    本节是前一节的延续,上一节中我们已经为我们的Web API项目创建必要的基础设施. 在本节中,我们将在我们的控制器类中实现操作方法,这些方法用来处理HTTP GET请求. 根据Web API命名约定, ...

  3. 创建包含CRUD操作的Web API接口-第一部

    在这里,我们将创建一个新的Web API项目,它将使用实体框架实现Get,POST.PUT和DELETE方法来实现CRUD操作. 首先,在Visual Studio 2013 for Web expr ...

  4. 创建包含CRUD操作的Web API接口5:实现Delete方法

    本节是前面四节的延续,在前面几节中我们创建了Web API并添加了必要的基础设施,实现了Get.Post.和Put方法.本节中,我们将介绍如何在Web API中实现Delete方法. 在RESTful ...

  5. 创建包含CRUD操作的Web API接口4:实现Put方法

    本节教程是前三节的延续,在前面我们创建了Web API和必要的基础设施,也实现了Get和Post方法.接下来,我们将在Web API中实现Put方法. RESTful架构中,HTTP PUT方法用于在 ...

  6. 创建包含CRUD操作的Web API接口3:实现Post方法

    本节是前面两节的延续,前面我们为Web API创建了必要的基础设施,并实现了Get方法.在这里,我们将在Web API中实现POST方法. 在RESTful架构中,使用HTTP POST请求用来在数据 ...

  7. Javascript操作DOM常用API总结

    基本概念 在讲解操作DOM的api之前,首先我们来复习一下一些基本概念,这些概念是掌握api的关键,必须理解它们. Node类型 DOM1级定义了一个Node接口,该接口由DOM中所有节点类型实现.这 ...

  8. JavaScript 操作 DOM 常用 API 总结

    文本整理了javascript操作DOM的一些常用的api,根据其作用整理成为创建,修改,查询等多种类型的api,主要用于复习基础知识,加深对原生js的认识. 基本概念 在讲解操作DOM的api之前, ...

  9. 【repost】Javascript操作DOM常用API总结

    Javascript操作DOM常用API总结 文本整理了javascript操作DOM的一些常用的api,根据其作用整理成为创建,修改,查询等多种类型的api,主要用于复习基础知识,加深对原生js的认 ...

随机推荐

  1. lua的弱弱引用表

    lua有GC.细节无需太关注.知道些主要的即可,能local就一定不要global: 还有在数组里的对象,除非显式=nil,否则非常难回收: 只是能够用弱引用表来告诉GC. 外部引用为0,就不要管我, ...

  2. 【leetcode刷题笔记】Remove Duplicates from Sorted List II

    Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numb ...

  3. P4240 毒瘤之神的考验

    题目 P4240 毒瘤之神的考验 神仙题\(emmm\) 前置 首先有一个很神奇的性质: \(\varphi(ij)=\dfrac{\varphi(i)\varphi(j)gcd(i,j)}{\var ...

  4. 20145229吴姗珊《Java程序设计》2天总结

    20145229吴姗珊<Java程序设计>2天总结 教材学习内容总结 异常处理 1.使用try.catch Java中所有错误都会被包装成对象,可以尝试(try)执行程序并捕捉(catch ...

  5. /etc/init.d目录和/etc/rc.local脚本

    一.关于/etc/init.d 如果你使用过Linux系统,那么你一定听说过init.d目录.这个目录到底是干嘛的呢?它归根结底只做了一件事情,但这件事情非同小可,是为整个系统做的,因此它非常重要.i ...

  6. mongodb同步

    mongodb同步 py-mongo-sync MongodbSync mongodb 的一个同步工具,具备将一个数据源上的数据,同步到其它 mongodb 上,支持: mongos -> (m ...

  7. Delphi回调函数的使用-例子

    Delphi回调函数的使用-例子 功能大体描述:Form1中有一个Edit和一个Button,当点击BUTTON时弹出FORM2,FORM2中也有一个EDIT和一个BUTTON,当点击FORM2中的B ...

  8. php获取图片的拍摄及其他数据信息

    服务器配置说明:1.在php.ini文件中找到;extension=php_exif.dll,去掉前面的分号2.在php.ini文件中找到;extension=php_mbstring.dll,去掉前 ...

  9. 深入理解JVM - 早期(编译期)优化

    Java“编译期”是一段“不确定”的操作过程:可能是指一个前端编译器(编译器的前端)把*.java文件转变为*.class文件的过程:可能是指虚拟机的后端运行期编译器(JIT编译器,Just In T ...

  10. 普林斯顿算法(1.3)并查集(union-find算法)——本质就是一个数 下面的子树代表了连在一起的点

    转自:https://libhappy.com/2016/03/algs-1.3/ 假设在互联网中有两台计算机需要互相通信,那么该怎么确定它们之间是否已经连接起来还是需要架设新的线路连接这两台计算机. ...