Проблема при переключении вкладок в JavaScriptJquery

Программирование на jquery
Ответить Пред. темаСлед. тема
Гость
 Проблема при переключении вкладок в JavaScript

Сообщение Гость »


У меня есть приложение JavaScript, в котором я использую вкладки, и я реализовал функцию загрузки и отображения данных в сетке. Однако когда я переключаю вкладки, я замечаю, что данные, отображаемые в сетке, не соответствуют выбранной вкладке. Вместо этого на обеих вкладках отображаются расчетные данные. Я проверил источники данных и логику переключения вкладок, но не могу понять, почему происходит это несоответствие.
Tradeloader.prototype.init = функция (песочница) { вар сам = Tradeloader.instance; self.currentSandBox = песочница; self.tabSchema = []; if (pageParameters && pageParameters.selectedTabId) { self.isDrill = правда; self.currentSelectedTab = pageParameters.selectedTabId; } else if (currentPageInfo && currentPageInfo.tab) { self.currentSelectedTab = currentPageInfo.tab; } еще { self.currentSelectedTab = self.tabSchema[0].id; // Предполагаем, что tabSchema не пуста } _.findWhere(self.tabSchema, {id: self.currentSelectedTab }).isDefault = true; $('#pageHeaderTabPanel_tab_content').css('margin-top', '0px'); $('#' + iago.contentBodyId).html(` Загрузить данные Рассчитать
`); }; Tradeloader.prototype.tabClickHandler = функция (selectedTabId, tabContentContainer) { вар сам = Tradeloader.instance; self.currentSelectedTab = selectedTabId; self.currTabContentContainer = tabContentContainer; Tradeloader.instance.postRightFilterBind(self.currentSelectedTab); }; вар загруженные данные = ноль; вар расчетные данные = ноль; вар originalData = ноль; вар SelectedFile = NULL; вар dataload = ложь; вар currentTab = 'tab1'; вар originalContent = NULL; var ExportButton = 'Экспорт'; Tradeloader.prototype.postRightFilterBind = функция (arg) { вар сам = Tradeloader.instance; вар reportDateInfo = Tradeloader.instance.currentSandBox.getReportDate(); вар sDate = момент (reportDateInfo.startDate).format(iago.isoDateFormat); вар eDate = момент(reportDateInfo.endDate).format(iago.isoDateFormat); if (arg === 'tradeLoaderLoader') { если (расчетные данные) { если (originalContent === null) { originalContent = $("#loaderContainer").html(); исходноеСодержимое += ВыбранныйФайл.имя; } $("#loaderContainer").html(ExportButton); $("#loaderContainer").show(); self.showLoadedDataexport(); } } else if (arg === 'tradeLoaderControl') { если (originalContent !== null) { $("#loaderContainer").html(originalContent); } если (загруженные данные) { $("#loaderContainer").show(); self.showLoadedData(); } } }; Tradeloader.prototype.loadXmlData = функция (args) { var selectfile = document.getElementById('myFile').files[0]; ВыбранныйФайл = { имя: выберите файл.имя, содержание: ноль, }; вар сам = Tradeloader.instance; вар reportDateInfo = Tradeloader.instance.currentSandBox.getReportDate(); вар sDate = момент (reportDateInfo.startDate).format(iago.isoDateFormat); вар eDate = момент(reportDateInfo.endDate).format(iago.isoDateFormat); вар читатель = новый FileReader (); reader.onload = функция (e) { ВыбранныйФайл.содержание = e.target.result; вар xmlContent = e.target.result; вар синтаксический анализатор = новый DOMParser(); var xmlDoc = parser.parseFromString(xmlContent, "text/xml"); var data = self.getGridDataschema(); var Records = xmlDoc.querySelectorAll("CoverShort_New"); Records.forEach(функция (запись) { вар rowData = {}; data.GridInfo.ColumnInfo.forEach(функция (столбец) { если (record.querySelector(column.ColumnName)) rowData[column.ColumnName] = Record.querySelector(column.ColumnName).textContent; }); rowData['Direction'] = 'CoverShort_New'; rowData['ContractFXRateNumerator'] = ''; data.DataSet.Table.push(rowData); }); Records = xmlDoc.querySelectorAll("Sell_New"); Records.forEach(функция (запись) { вар rowData = {}; data.GridInfo.ColumnInfo.forEach(функция (столбец) { если (record.querySelector(column.ColumnName)) rowData[column.ColumnName] = Record.querySelector(column.ColumnName).textContent; }); rowData['Направление'] = 'Продать_Новый'; rowData['ContractFXRateNumerator'] = ''; data.DataSet.Table.push(rowData); }); self.overrideOnload(данные); }; readAsText(selectfile); }; Tradeloader.prototype.getGridDataschema = функция () { вар сам = Tradeloader.instance; вар данные = { "ГридИнфо": { "GridId": "tradeloaderGrid", «Размер страницы»: 80, "DateFormat": "ММ/дд/гггг", "AdaptableId": 'adaptableId', «RaiseGridRenderComplete»: self.gridRaiseClickEvent, "Информация о столбце": [ { "ColumnName": "Портфель", "DataType": "строка" }, { "ColumnName": "ContractFXRateNumerator", "DataType": "string" }, { "ColumnName": "ContractFXRateDenominator", "DataType": "string" }, { "ColumnName": "Инвестиции", "DataType": "строка" }, { "ColumnName": "Direction", "DataType": "string" }, { "ColumnName": "FundStructure", "DataType": "string" }, { "ColumnName": "CapitalizedExpenses", "DataType": "string" }, ], }, "Набор Данных": { "Стол": [] } }; возврат данных; } Tradeloader.prototype.getGridDataschemaexported = функция () { вар сам = Tradeloader.instance; вар данные = { "ГридИнфо": { "GridId": "tradeloaderGrid", «Размер страницы»: 80, "DateFormat": "ММ/дд/гггг", "AdaptableId": 'adaptableId', «RaiseGridRenderComplete»: self.gridRaiseClickEvent, "Информация о столбце": [ { "ColumnName": "Портфель", "DataType": "строка" }, { "ColumnName": "ContractFXRateNumerator", "DataType": "string" }, { "ColumnName": "ContractFXRateDenominator", "DataType": "string" }, { "ColumnName": "Инвестиции", "DataType": "строка" }, { "ColumnName": "Direction", "DataType": "string" }, { "ColumnName": "FundStructure", "DataType": "string" }, { "ColumnName": "CapitalizedExpenses", "DataType": "string" }, ], }, "Набор Данных": { "Стол": [] } }; возврат данных; } Tradeloader.prototype.overrideOnload = функция (данные) { вар сам = Tradeloader.instance; вар columnsInfoArr = data.GridInfo.ColumnInfo; вар GridInfo = iago.utils.commonGridInfo(); GridInfo.IdColumnName = "ID"; GridInfo.ColumnNameMapping = data.GridInfo.ColumnNameMapping; GridInfo.AdaptableId = 'adaptableId'; GridInfo.GridId = data.GridInfo.GridId; GridInfo.CurrentPageId = data.GridInfo.CurrentPageId; GridInfo.PageSize = 80; GridInfo.DateFormat = "ММ/дд/гггг"; GridInfo.ColumnInfo = ColumnInfoArr; $('#' +gridInfo.GridId).css({ 'height': '60vh', 'width': '100%' }); GridInfo.RaiseGridRenderComplete = self.gridRaiseClickEvent; // Очистить существующее содержимое $("#" +gridInfo.GridId).empty(); // Добавляем контейнер адаптируемой сетки $("#" +gridInfo.GridId).append('< /див>'); // Связываем сетку с извлеченными данными iago.utils.bindGrid(gridInfo, data.DataSet.Table); загруженныеДанные = данные.НаборДанных.Таблица; расчетные данные = данные.НаборДанных.Таблица; Загрузка данных = правда; }; Tradeloader.prototype.showLoadedData = функция () { данные var = Tradeloader.prototype.getGridDataschema(); data.DataSet.Table = data.DataSet.Table.concat(loadedData); data.GridInfo.GridId = 'tradeloaderGrid'; Tradeloader.prototype.overrideOnload(данные); } вар Обновленные данные = ложь; вар LastUpdatedData = NULL; Tradeloader.prototype.showLoadedDataexport = функция () { данные var = Tradeloader.prototype.getGridDataschemaexported(); if (!Updateddata || LastUpdatedData === null) { data.DataSet.Table = []; вычисленные данные.forEach(функция (запись) { вар rowData = {}; data.GridInfo.ColumnInfo.forEach(функция (столбец) { если (запись[столбец.Имястолбца]) { rowData[column.ColumnName] = запись[column.ColumnName]; } }); rowData['CapitalizedExpenses'] = запись['FundStructure']; rowData['FundStructure'] = запись['Портфель']; rowData['Инвестиции'] = запись['Инвестиции'].substring(4).toLowerCase(); data.DataSet.Table.push(rowData); }); Обновленные данные = правда; LastUpdatedData = $.extend(true, {}, data); } еще { данные = $.extend(true, {}, LastUpdatedData); } data.GridInfo.GridId = 'tradeloaderGrid'; Tradeloader.prototype.overrideOnload(данные); }
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Jquery»