ECMAScript常用方法汇总(经过测试)
ECMAScript对列表项的增删改查及其他操作 不废话看代码!
<script type="text/javascript">
ExecuteOrDelayUntilScriptLoaded(myjsfucntion, "sp.js");
//获取WebSite信息
function retrieveWebSite() {
var clientContext = new SP.ClientContext.get_current();
this.oWebsite = clientContext.get_web();
// clientContext.load(this.oWebsite);
clientContext.load(this.oWebsite, 'Title', 'Description');
clientContext.executeQueryAsync(Function.createDelegate(this, this.retrieveWebSiteonQuerySucceeded),
Function.createDelegate(this, this.retrieveWebSiteonQueryFailed));
}
function retrieveWebSiteonQuerySucceeded(sender, args) { alert('Title: ' + this.oWebsite.get_title() + ' Decription: ' + this.oWebsite.get_description()); }
function retrieveWebSiteonQueryFailed(sender, args) { alert('request failed ' + args.get_message() + '\n' + args.get_stackTrace()); }
</script>
<script type="text/javascript">
//更改WebSite的Title
function updateTitle() {
var ctx = new SP.ClientContext.get_current();
this.web = ctx.get_web();
web.set_title('UpdatedTitle');
this.web.update();
ctx.executeQueryAsync(Function.createDelegate(this, this.onUpdate),
Function.createDelegate(this, this.onFail));
}
function onUpdate(sender, args) { alert('title updated'); }
function onFail(sender, args) { alert('failed to update title. Error:' + args.get_message()); }
</script>
<script type="text/javascript">
//获取列表记录
function getLists() {
var clientContext = new SP.ClientContext();
var oWebSite = clientContext.get_web();
listCollection = oWebSite.get_lists();
clientContext.load(listCollection);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onGetListsSucceeded), Function.createDelegate(this, this.onGetListsFailed));
}
function onGetListsSucceeded() {
var str = "";
var listsEnumerator = listCollection.getEnumerator();
while (listsEnumerator.moveNext()) {
var objList = listsEnumerator.get_current();
str += "<a href='" + "http://zheng-pc" + objList.get_parentWebUrl() + objList.get_defaultViewUrl() + "'>" + objList.get_title() + "</a>" + "<br/>";
}
document.getElementById("lists").innerHTML = str;
}
function onGetListsFailed(sender, args) {
alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
}
</script>
<script type="text/javascript">
//搜索
function search() {
var clientContext = new SP.ClientContext();
var oWebSite = clientContext.get_web();
var list = oWebSite.get_lists().getByTitle("任务");
fieldCollection = list.get_fields();
var camlQuery = new SP.CamlQuery();
camlQuery.set_viewXml("<View>" +
"<Query>" +
"<Where><Gt><FieldRef Name='DueDate' /><Value Type='DateTime'>2008-01-1T00:00:00Z</Value></Gt></Where>" +
"</Query>" +
"<ViewFields>" +
"<FieldRef Name=\"Title\" /><FieldRef Name=\"Body\" />" +
"<FieldRef Name=\"DueDate\" />" +
"</ViewFields>" +
"</View>");
listItemCollection = list.getItems(camlQuery);
clientContext.load(fieldCollection);
clientContext.load(listItemCollection);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onSearchListSucceeded), Function.createDelegate(this, this.onSearchListFailed));
}
function onSearchListSucceeded() {
var str = "";
var listItemEnumerator = listItemCollection.getEnumerator();
var fieldsEnumerator = fieldCollection.getEnumerator();
while (listItemEnumerator.moveNext()) {
var oListItem = listItemEnumerator.get_current();
str += "Item " + oListItem.get_id() + ":"
while (fieldsEnumerator.moveNext()) {
var oField = fieldsEnumerator.get_current();
str += oField.get_staticName() + "<br/>";
}
str += "<br/>";
}
document.getElementById("lists").innerHTML = str;
}
function onSearchListFailed(sender, args) {
alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
}
</script>
<script type="text/javascript">
//创建列表项
var siteUrl = '/sites/MySiteCollection';
function createListItem() {
//var clientContext = new SP.ClientContext(siteUrl);
var clientContext = new SP.ClientContext();
var oList = clientContext.get_web().get_lists().getByTitle('TestList');
var itemCreateInfo = new SP.ListItemCreationInformation();
this.oListItem = oList.addItem(itemCreateInfo);
oListItem.set_item('Title', 'My New Item!');
oListItem.set_item('Content', 'Hello World!');
oListItem.update();
clientContext.load(oListItem);
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
ShowStatus();
}
function onQuerySucceeded() { var notifyId = SP.UI.Notify.addNotification("Item created:" + oListItem.get_id(), false);} //alert('Item created: ' + oListItem.get_id()); }
function onQueryFailed(sender, args) { alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace()); }
function ShowStatus() {
SP.UI.Status.removeAllStatus();
SP.UI.Status.addStatus("ECMAScript状态提醒!ECMAScript状态提醒!");
}
//查询列表项
var product;
function getProductById(productId) {
try {
var context = new SP.ClientContext.get_current();
var web = context.get_web();
var list = web.get_lists().getByTitle('TestList');
this.product = list.getItemById(productId);
context.load(product, 'Title', 'Content');
context.executeQueryAsync(Function.createDelegate(this, this.ListItemsReceived), Function.createDelegate(this, this.failed));
}
catch (e) {
alert(e);
}
}
var productcollection;
function getProducts(title) {
try {
var context = new SP.ClientContext.get_current();
var web = context.get_web();
var list = web.get_lists().getByTitle('TestList');
var query = '<View Scope=\'RecursiveAll\'>' + '<Query>' + '<Where>' + '<Contains>' + '<FieldRef Name=\'Title\'/>' + '<Value Type=\'Text\'>' + title + '</Value>' + '</Contains>' + '</Where>' + '</Query>' + '</View>';
var camlQuery = new SP.CamlQuery();
camlQuery.set_viewXml(query);
this.productcollection = list.getItems(camlQuery);
context.load(this.productcollection, 'Include(Title, Content)');
context.executeQueryAsync(Function.createDelegate(this, this.ListItemsReceived), Function.createDelegate(this, this.failed));
}
catch (e) {
alert(e);
}
}
function ListItemsReceived() { alert('got ListItem'); prcessProducts(this.productcollection); }
function failed(sender, args) { alert('failed. Message:' + args.get_message()); }
//删除列表项
var siteUrl = '/sites/MySiteCollection';
function deleteListItem() {
this.itemId = 2;
//var clientContext = new SP.ClientContext(siteUrl);
var clientContext = new SP.ClientContext.get_current();
var oList = clientContext.get_web().get_lists().getByTitle('TestList');
this.oListItem = oList.getItemById(itemId);
oListItem.deleteObject(); //Update
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded2), Function.createDelegate(this, this.onQueryFailed2));
}
function onQuerySucceeded2() { alert('Item deleted: ' + itemId); }
function onQueryFailed2(sender, args) { alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace()); }
</script>
<script type="text/ecmascript" language="ecmascript">
//sharepoint的提示消息类
var statusId = '';
var notifyId = '';
function AddNotification() {
notifyId = SP.UI.Notify.addNotification("Hello World!", true);
}
function RemoveNotification() {
SP.UI.Notify.removeNotification(notifyId);
notifyId = '';
}
function AddStatus() {
statusId = SP.UI.Status.addStatus("Status good!");
SP.UI.Status.setStatusPriColor(statusId, 'red');
}
function RemoveLastStatus() {
SP.UI.Status.removeStatus(statusId);
statusId = '';
}
function RemoveAllStatus() {
SP.UI.Status.removeAllStatus(true);
}
</script>
转载于:https://www.cnblogs.com/michael-zheng/archive/2012/02/07/2340845.html