我使用以下代码作为基础,允许最终用户输入姓氏和/或ID号,它只是从列表中检索该姓氏/ ID的所有实例,并将它们放在文本字段中或一些东西。这是在SharePoint 2013页面上。
<input type="text" id="Surname" name="Surname" style="width:200px" value="Enter the surname" onfocus="this.value = '';">
<input type="text" id="IDNumber" name="IDNumber" style="width:200px" value="Enter ID number" onfocus="this.value = '';">
<input type="button" name="button" value="Find Services used by person" onclick="findDocuments()">
<script type="text/javascript">
function findDocuments()
{
var IDNumber = document.getElementById("IDNumber").value;
var Surname = document.getElementById("Surname").value;
window.open("ADDRESS HERE" + Number + "-FilterField2%3DSurname-FilterValue2%3D" + Surname)
}
</script>
注意:ADDRESS HERE是列表或库的地址,我不希望它必须打开一个窗口,而是插入检索到的数据并将其放入页面的文本框中。
为了更清晰地重复,用户将看到一个或两个字段,一个字段用于输入ID号,一个字段用于输入姓氏(或两者)。当他们点击一个按钮时,它会查看该ID号或姓氏在列表中有多少个实例,并带回该人使用了多少不同的服务并将它们放在一个字段中。
目前我只能使用Media Content添加的webparts来执行此操作,因为我没有安装Visual Studio或类似内容的经验或资源。有没有人对此有任何建议?
谢谢。
答案 0 :(得分:0)
您可以使用REST服务通过ajax使用以下参数检索列表项:
$.ajax({
url:"/_api/lists/getbytitle('YOUR_LIST_NAME')/items?$select=FIELD1,FIELD2&$filter=FIELD1 eq '" + IDNumber + "' and FIELD2 eq '" + Surname + "'",
headers: { "Accept": "application/json; odata=verbose"},
success:function(data) {
$.each(data.d.results, function(i, item) {
output += data.d.results[i].FIELD1 + " - " + data.d.results[i].FIELD2;
})
}
});