I have used the code below, but it enters the inner loop (//some code here) with the last index of i:
for (i = 0; i < window.opener.selectedItemsTask.length; i++) {
if (window.opener.selectedItemsTask[i] != undefined) {
var tempId = window.opener.selectedItemsTask[i].Id;
var taskQuery = "/xrmservices/2011/OrganizationData.svc/TaskSet?$select=CreatedBy,Description,new_CustomerAddress,new_CustomerName,new_CustomerPhone,new_Local,new_NewTimeFrame,new_TaskDeliveryMan,new_Type,ScheduledEnd,Subject&$filter=ActivityId eq guid'" + tempId + "'";
var requestUrl = window.opener.Xrm.Page.context.getClientUrl() + taskQuery;
var request = new XMLHttpRequest();
request.open("GET", requestUrl, true);
request.setRequestHeader("Accept", "application/json");
request.setRequestHeader("Content-Type", "application/json; charset=utf-8");
request.onreadystatechange = function () {
if (request.readyState == 4 && request.status == 200) {
var json = window.opener.$.parseJSON(request.responseText);
if ((json != undefined) && (json.d != undefined) && (json.d.results != undefined) && (json.d.results[0] != null)) {
var responseResults = json.d.results[0];
//SOME CODE HERE
}
}
};
}
}