使用JavaScript获取与项关联的SharePoint任务,而不使用相关项

使用JavaScript获取与项关联的SharePoint任务,而不使用相关项,javascript,sharepoint,Javascript,Sharepoint,我有一个不寻常的环境,客户机不想支持SharePoint组件,因此我有一个O365 SharePoint站点,我只能通过工作流或JavaScript以编程方式进行操作 我有一些正在启动任务的工作流,但由于某些原因,我偶尔会收到一个没有填充“相关项”的任务。因此,查找与任务关联的项失败,因为我正在查找的相关项是我正在使用的ID。我仍然可以从列表项,到工作流,再到任务。是否有另一种方法,使用类似WorkflowItemId的东西,我可以将任务与这些项目关联?以下是我必须通过项目Id查找任务的一些代码

我有一个不寻常的环境,客户机不想支持SharePoint组件,因此我有一个O365 SharePoint站点,我只能通过工作流或JavaScript以编程方式进行操作


我有一些正在启动任务的工作流,但由于某些原因,我偶尔会收到一个没有填充“相关项”的任务。因此,查找与任务关联的项失败,因为我正在查找的相关项是我正在使用的ID。我仍然可以从列表项,到工作流,再到任务。是否有另一种方法,使用类似WorkflowItemId的东西,我可以将任务与这些项目关联?

以下是我必须通过项目Id查找任务的一些代码,它要么删除任务(删除列表项目时),要么填充taskId以在表单中显示,这在O365 SharePoint online中使用。为其指定列表项的ID,并将列表标题更改为任务列表标题。如果还有其他问题,请告诉我

     $.fn.get_taskIds = function (param) {
     var itemTitle, taskId, curID = param.ItemId, foundAction = param.action;
     get_listData(appWebUrl + "/_api/web/lists/getbytitle('ExpirationTaskList')/items?$select=RelatedItems,Id,Title").done(
        function (data) {
            var itemJSON;
            $.each(data.d.results, function (index, item) {
                itemJSON = $.parseJSON(item.RelatedItems);
                itemTitle = item.Title;
                taskId = item.Id;
                $(itemJSON).each(function (i, val) {
                    $.each(val, function (k, v) {
                        if (k == 'ItemId') {
                            if (v == curID) {
                                switch (foundAction) {
                                    case 'view':
                                        if (itemTitle == 'Warranty Expiration') { $('#WTaskId').val(taskId); $('#wTaskRadio').attr('disabled', false); }
                                        if (itemTitle == 'Lease Expiration') { $('#LTaskId').val(taskId); $('#lTaskRadio').attr('disabled', false); }
                                        break;
                                    case 'delete':
                                        delete_Task(taskId);
                                        break;
                                } 
                            }
                        }
                    })
                })
            });

        }).fail(function (arg) {
            $('#jsError').html('Fail in Async Query to Retrieve task data: <br />');
            var jsonResp = $.parseJSON(arg.responseText);
            $('#jsError').append(jsonResp.error.message.value);
        });
}
    var dfrd = $.Deferred(function (dfrd) {
        $.ajax({
            url: aurl,
            type: "Get",
            contentType: "application/json;odata=verbose",
            headers: {
                "Accept": "application/json;odata=verbose"
            },
            success: function (data) {
                dfrd.resolve(data);
            },
            error: function (args) {
                dfrd.reject(args);
            }
        });
    });
    return dfrd.promise();
}