0

We recently upgraded our magento 1.8.1 install to 1.9.4.1, we also changed our php version from 5.6.4 to 7.2

However we are now getting an error when looking at the product page

Uncaught DOMExeption: Failed to execute 'appendChild' on 'Node': The new child element contains the 
parent.
    at klass.moveTabContentInDest

Coming from the Javascript for the Adminhtml module. This is quite a critical issue as it is stopping any edits from being made on the product's within the magento backend.

Does anyone know a way to fix this issue?

moveTabContentInDest : function(){
    for(var tab=0; tab<this.tabs.length; tab++){
        if($(this.destElementId) &&  !this.tabs[tab].contentMoved){
            var tabContentElement = $(this.getTabContentElementId(this.tabs[tab]));
            if(tabContentElement && tabContentElement.parentNode.id != this.destElementId){
                $(this.destElementId).appendChild(tabContentElement);
                tabContentElement.container = this;
                tabContentElement.statusBar = this.tabs[tab];
                tabContentElement.tabObject  = this.tabs[tab];
                this.tabs[tab].container = this;
                this.tabs[tab].show = function(){
                    this.container.showTabContent(this);
                };
                if(varienGlobalEvents){
                    varienGlobalEvents.fireEvent('moveTab', {tab:this.tabs[tab]});
                }
            }
        }
    }
    if (this.displayFirst) {
        this.showTabContent($(this.displayFirst));
        this.displayFirst = null;
    }
},
  • Can You run search on code and find this part of js that is moving tab content? – BartZalas May 24 at 8:17
  • @BartZalas added the js code block to the inital post – Mage Noob May 24 at 10:24
0

It's hard to see exactly what's going on without the full context, for example what is destElementId?

But generally that error sounds like you are trying to append a parent to the child block and doing so would also move the child block into itself which would be an incredibly strange thing to try and do.

If $(this.destElementId) is actually the child then it suggests the elements are the wrong way round, what happens if you change:

$(this.destElementId).appendChild(tabContentElement);

to

tabContentElement.appendChild($(this.destElementId));
  • This was what i through when i was looking at the error, but when i swap the around it completely stops the menu's from working, they dont even highlight with this, I would also like to note that this isnt any custom code it's all magento core code (from my knowledge) – Mage Noob May 24 at 10:49
  • Does the error occur if you remove all admin changes and modules? – Ben Crook May 24 at 10:55
  • there is no admin changes, and i have disabled to test the module's that i am aware could be affecting this and it didnt change anything. – Mage Noob May 24 at 11:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.