如何根据某些条件在新的 aspx 页面中获取共享点列表项
How To get the sharepoint list items in new aspx page based on some condition
我有一个列表和两个 .aspx 页面..第一页包含一个特定的字段项,第二页显示基于第一页字段项的列表项....现在我的问题是如何根据第一页字段项
重定向第二页
我想使用 javascript
根据首页条件检索项目
我是 Sharepoint 的新手,帮帮我
我们可以使用 jQuery 从第一页获取字段数据,然后通过 QueryString 发送到第二页,然后在第二页中,我们可以获取查询字符串值并使用 REST 获取列表项API。下面的简单例子供大家参考。
1.Create自定义列表"MyCustomList",添加单行文本字段"TestField"。
2.Create 一个网站页面 first.aspx 和 second.aspx.
3.In first.aspx 页面,添加文本框和按钮,并添加一些 jQuery 代码来获取字段值并在单击按钮时重定向到 second.aspx 页面。
<script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#getBtn").click(function(){
var testField=$("#TestField").val();
if(testField!=null){
window.location.href="second.aspx?TestField="+testField;
}
});
});
</script>
<input id="TestField" type="text"/><input id="getBtn" type="button" value="GetItems"/>
4.In second.aspx 页。代码如下。
<script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
var listName="CL0820";
var testField=getQueryStringParameter("TestField");
var filter="$filter=TestField eq '"+testField+"'";
RetrieveListItems(listName,filter);
})
function RetrieveListItems(listName,filter){
$("#ListData").html("");
$.ajax({
url: "http://sp2013/sites/team/_api/web/lists/getbytitle('" + listName + "')/items?"+filter,
type: "GET",
headers: {
"Accept": "application/json;odata=verbose",
},
success: function (data) {
var html="";
html+="<table border='1' cellpadding='1' cellspacing='1'><tr><th>ID</th><th>Title</th></tr>";
for (var i = 0; i < data.d.results.length; i++) {
var item = data.d.results[i];
var id = item.ID;
var title = item.Title;
html+="<tr><td>"+id+"</td><td>"+title+"</td></tr>";
}
html+"</table>";
$("#ListData").html(html);
},
error: function (data) {
alert("Error");
}
});
}
function getQueryStringParameter(paramToRetrieve) {
var params = window.location.href.split("?")[1].split("&");
var strParams = "";
for (var i = 0; i < params.length; i = i + 1) {
var singleParam = params[i].split("=");
if (singleParam[0] == paramToRetrieve)
return singleParam[1];
}
}
</script>
<div id="ListData"/>
我有一个列表和两个 .aspx 页面..第一页包含一个特定的字段项,第二页显示基于第一页字段项的列表项....现在我的问题是如何根据第一页字段项
重定向第二页我想使用 javascript
根据首页条件检索项目我是 Sharepoint 的新手,帮帮我
我们可以使用 jQuery 从第一页获取字段数据,然后通过 QueryString 发送到第二页,然后在第二页中,我们可以获取查询字符串值并使用 REST 获取列表项API。下面的简单例子供大家参考。
1.Create自定义列表"MyCustomList",添加单行文本字段"TestField"。
2.Create 一个网站页面 first.aspx 和 second.aspx.
3.In first.aspx 页面,添加文本框和按钮,并添加一些 jQuery 代码来获取字段值并在单击按钮时重定向到 second.aspx 页面。
<script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#getBtn").click(function(){
var testField=$("#TestField").val();
if(testField!=null){
window.location.href="second.aspx?TestField="+testField;
}
});
});
</script>
<input id="TestField" type="text"/><input id="getBtn" type="button" value="GetItems"/>
4.In second.aspx 页。代码如下。
<script src="https://code.jquery.com/jquery-1.12.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
var listName="CL0820";
var testField=getQueryStringParameter("TestField");
var filter="$filter=TestField eq '"+testField+"'";
RetrieveListItems(listName,filter);
})
function RetrieveListItems(listName,filter){
$("#ListData").html("");
$.ajax({
url: "http://sp2013/sites/team/_api/web/lists/getbytitle('" + listName + "')/items?"+filter,
type: "GET",
headers: {
"Accept": "application/json;odata=verbose",
},
success: function (data) {
var html="";
html+="<table border='1' cellpadding='1' cellspacing='1'><tr><th>ID</th><th>Title</th></tr>";
for (var i = 0; i < data.d.results.length; i++) {
var item = data.d.results[i];
var id = item.ID;
var title = item.Title;
html+="<tr><td>"+id+"</td><td>"+title+"</td></tr>";
}
html+"</table>";
$("#ListData").html(html);
},
error: function (data) {
alert("Error");
}
});
}
function getQueryStringParameter(paramToRetrieve) {
var params = window.location.href.split("?")[1].split("&");
var strParams = "";
for (var i = 0; i < params.length; i = i + 1) {
var singleParam = params[i].split("=");
if (singleParam[0] == paramToRetrieve)
return singleParam[1];
}
}
</script>
<div id="ListData"/>