如何在下拉列表中将多次选择中获取的数组值作为过滤器传递给ajax调用的URL

时间:2018-01-04 12:10:38

标签: javascript jquery ajax

我有一个项目下拉列表。用户可以多选项目。 我想将下拉列表中的多选中选择的值作为ajax url中的过滤器参数传递。

代码如下:

             function CheckIfPresent(callback)
    {
        var proj = [];
        var urlprograms;
        if ($("#projNameDropdown :selected").text() != 'Select all projects') {                            
            $('#projNameDropdown :selected').each(function (i, sel) {
                proj[i++] = $(sel).val();                    
                if (proj.length == 1)
                    urlprograms = "(Project_Name/Project_Name eq '" + proj[0] + "')";
            });
            if (proj.length > 1) {
                for (i = 1; i < proj.length; i++) {
                    urlprograms += " or (Project_Name/Project_Name eq '" + proj[i] + "')";
                }
            }
        }

        $.ajax({
            url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists('')/items?$select=*,Project_Name/Project_Name&$expand=Project_Name&$filter=" + urlprograms + "'",
            method: "GET",
            headers: {
                "Accept": "application/json; odata=verbose"
            },
             success: function (dataActive) {
             }
               error: function (dataActive) {
                console.log(dataActive);
            }

        });
        }

我无法达到成功方法并得到错误。我做错了什么?

0 个答案:

没有答案