Filter Sharepoint下拉选择过滤器
我在表格上有一个下拉列表。我将其设置为列表的唯一条目。这很好,当用户选择上一个列表条目中已经选择的选项时,他们在保存或提交表单时会收到通知。然而,我宁愿从下拉列表中删除选择,如果该选择已经做出并且存在于列表中,这样他们就不能选择已经选择的内容。Filter Sharepoint下拉选择过滤器,filter,sharepoint-2013,dropdown,infopath2010,Filter,Sharepoint 2013,Dropdown,Infopath2010,我在表格上有一个下拉列表。我将其设置为列表的唯一条目。这很好,当用户选择上一个列表条目中已经选择的选项时,他们在保存或提交表单时会收到通知。然而,我宁愿从下拉列表中删除选择,如果该选择已经做出并且存在于列表中,这样他们就不能选择已经选择的内容。 感谢您的帮助我们可以使用REST API获取所有存在的下拉项,然后删除“新建/编辑表单”页面中的下拉选项。以下代码供您参考 <script src="//code.jquery.com/jquery-3.3.1.min.js" type="text
感谢您的帮助我们可以使用REST API获取所有存在的下拉项,然后删除“新建/编辑表单”页面中的下拉选项。以下代码供您参考
<script src="//code.jquery.com/jquery-3.3.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
removeDuplicateDropDowm("FilterDropDown");
});
function removeDuplicateDropDowm(fieldName){
var listId = _spPageContextInfo.pageListId.replace("{","").replace("}","");
var fieldHTML="";
var url = _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists(guid'"+listId+"')/items?$select="+fieldName;
$.ajax({
url: url,
method: "GET",
async:false,
headers: { "Accept": "application/json; odata=verbose" },
success: function (data) {
var items = data.d.results;
$("select[title='"+fieldName+"'] option").each(function(){
for(var i=0;i<items.length;i++){
if(items[i][fieldName]==$(this).val()){
$(this).remove();
}
}
});
},
error: function (error) {
console.log(JSON.stringify(error));
}
});
return fieldHTML;
}
</script>
$(函数(){
移除的重复下拉菜单(“过滤器下拉菜单”);
});
函数RemovedUpplicateDropDowm(字段名){
var listId=_spPageContextInfo.pageListId.replace(“{”,“”)。replace(“}”,“”);
var fieldHTML=“”;
var url=_spPageContextInfo.webAbsoluteUrl+“/_api/web/lists(guid'+listId+”)/items?$select=“+fieldName;
$.ajax({
url:url,
方法:“获取”,
async:false,
标题:{“Accept”:“application/json;odata=verbose”},
成功:函数(数据){
var项目=数据和结果;
$(“选择[title='”+fieldName+“']选项”)。每个(函数(){
对于(var i=0;i