{"record":{"id":"b97416a63a6a1419","repo":"octobercms/october","slug":"the-tab-controls-element-should-have-the-id-attrib","errorCode":null,"errorMessage":"The tab controls element should have the id attribute value.","messagePattern":"The tab controls element should have the id attribute value\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"modules/backend/assets/js/october/october.tabformexpandcontrols.js","lineNumber":27,"sourceCode":"        BaseProto = Base.prototype\n\n    var TabFormExpandControls = function ($tabsControlElement, options) {\n        this.$tabsControlElement = $tabsControlElement\n        this.options = $.extend(TabFormExpandControls.DEFAULTS, typeof options == 'object' && options)\n        this.tabsControlId = null\n\n        Base.call(this)\n        this.init()\n    }\n\n    TabFormExpandControls.prototype = Object.create(BaseProto)\n    TabFormExpandControls.prototype.constructor = TabFormExpandControls\n\n    TabFormExpandControls.prototype.init = function() {\n        this.tabsControlId = this.$tabsControlElement.attr('id')\n\n        if (!this.tabsControlId) {\n            throw new Error('The tab controls element should have the id attribute value.')\n        }\n\n        this.registerHandlers()\n    }\n\n    TabFormExpandControls.prototype.dispose = function() {\n        this.unregisterHandlers()\n\n        this.$tabsControlElement = null\n\n        BaseProto.dispose.call(this)\n    }\n\n    TabFormExpandControls.prototype.registerHandlers = function() {\n        this.$tabsControlElement.on('initTab.oc.tab', this.proxy(this.initTab))\n        this.$tabsControlElement.on('click', '[data-control=\"tabless-collapse-icon\"]', this.proxy(this.tablessCollapseClicked))\n        this.$tabsControlElement.on('click', '[data-control=\"primary-collapse-icon\"]', this.proxy(this.primaryCollapseClicked))\n    }","sourceCodeStart":9,"sourceCodeEnd":45,"githubUrl":"https://github.com/octobercms/october/blob/b608633a7e8922487d91a8161499020121c3b3bf/modules/backend/assets/js/october/october.tabformexpandcontrols.js#L9-L45","documentation":"Error \"The tab controls element should have the id attribute value.\" thrown in octobercms/october.","triggerScenarios":"Thrown at modules/backend/assets/js/october/october.tabformexpandcontrols.js:27 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"b608633a7e8922487d91a8161499020121c3b3bf","analyzedAt":"2026-08-21T04:24:57.515Z","schemaVersion":2},"datasetVersion":"2026-08-21T11:28:35.574Z"}